You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by de...@apache.org on 2006/03/08 10:01:53 UTC

svn commit: r384160 [3/4] - in /webservices/axis2/trunk/archive/java/scratch/Axis_Management_module: ./ management/ management/etc/ management/resources/ management/resources/management-console/ management/resources/management-console/css/ management/r...

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/DynamicStatsManager.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/DynamicStatsManager.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/DynamicStatsManager.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/DynamicStatsManager.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,162 @@
+package org.apache.axis2.management.core.managers;
+
+import org.apache.axis2.management.core.utils.ServiceStats;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.apache.axis2.description.AxisModule;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.AxisServiceGroup;
+import org.apache.axis2.description.TransportInDescription;
+import org.apache.axis2.description.TransportOutDescription;
+import org.apache.axis2.description.Parameter;
+
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Collection;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+
+
+public class DynamicStatsManager {
+
+
+	private ConfigurationContext configContext = null;
+	private AxisConfiguration axisConfig = null;
+
+	private HashMap serviceStatsMap = null;
+	private int inMessages = 0;
+	private int outMessages = 0;
+	private int inFaultMessages = 0;
+	private int outFaultMessages = 0;
+
+
+	public DynamicStatsManager(ConfigurationContext configContext) {
+		this.configContext = configContext;
+		this.axisConfig = configContext.getAxisConfiguration();
+
+		serviceStatsMap = new HashMap();
+
+		System.out.println("DynamicStatsManager instantaited.");
+	}
+
+
+	public void updateStats(MessageContext msgContext) {
+		
+		System.out.println("NOTIFYING S1");
+		
+		if(msgContext != null) {
+		
+			// monitor global requests
+			if(msgContext.getFLOW() == MessageContext.IN_FLOW) {
+				System.out.println("IN MESSAGE");
+				inMessages++;
+				
+				if(msgContext.isProcessingFault()) {
+					inFaultMessages++;
+					System.out.println("FAULT");
+				}
+			} else if(msgContext.getFLOW() == MessageContext.OUT_FLOW) {
+				System.out.println("OUT MESSAGE");
+				outMessages++;
+				
+				if(msgContext.isProcessingFault()) {
+					outFaultMessages++;
+					System.out.println("FAULT");
+				}
+			} 
+	
+			// monitor service level requests
+			String serviceName = msgContext.getAxisService().getName();
+			System.out.println("NOTIFYING S3");
+			ServiceStats serviceStats = (ServiceStats)serviceStatsMap.get(serviceName);
+			System.out.println("NOTIFYING S4");
+			if(serviceStats != null) {
+				serviceStats.updateStats(msgContext);
+			}
+		}
+	}
+
+
+	public int getInMessages() {
+		return inMessages;
+	}
+	
+
+	public void clearInMessages() {
+		inMessages = 0;
+	}
+	
+	
+	public int getOutMessages() {
+		return outMessages;
+	}
+	
+
+	public void clearOutMessages() {
+		outMessages = 0;
+	}
+	
+	
+	public int getFaultInMessages() {
+		return inFaultMessages;
+	}
+	
+
+	public void clearFaultInMessages() {
+		inFaultMessages = 0;
+	}
+	
+	
+	public int getFaultOutMessages() {
+		return outFaultMessages;
+	}
+	
+
+	public void clearFaultOutMessages() {
+		outFaultMessages = 0;
+	}
+	
+	
+	public HashMap getMonitoredServices() {
+		return serviceStatsMap;
+	}
+
+
+	public void setServiceToMonitor(String serviceName) {
+		
+		ServiceStats serviceStats = new ServiceStats();
+
+		if(!serviceStatsMap.containsKey(serviceName)) {
+			serviceStatsMap.put(serviceName, serviceStats);
+		}	
+	}
+
+	
+	public ServiceStats getMonitoredService(String serviceName) throws AxisFault {
+		
+		ServiceStats serviceStats = (ServiceStats)serviceStatsMap.get(serviceName);
+
+		if(serviceStats == null) {
+			throw new AxisFault("Service not monitored.");
+		} 
+
+		return serviceStats;
+	}
+	
+	
+	public boolean isServiceMonitoring(String serviceName) {
+		ServiceStats serviceStats = (ServiceStats)serviceStatsMap.get(serviceName);
+
+		if(serviceStats == null) {
+			return false;
+		} 
+
+		return true;
+	}
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/GlobalManager.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/GlobalManager.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/GlobalManager.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/GlobalManager.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,390 @@
+package org.apache.axis2.management.core.managers;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.apache.axis2.description.AxisModule;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.AxisServiceGroup;
+import org.apache.axis2.description.TransportInDescription;
+import org.apache.axis2.description.TransportOutDescription;
+import org.apache.axis2.description.Parameter;
+
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Collection;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+
+
+public class GlobalManager {
+
+
+	private ConfigurationContext configContext = null;
+	private AxisConfiguration axisConfig = null;	
+
+
+	public GlobalManager(ConfigurationContext configContext) {
+		this.configContext = configContext;
+		this.axisConfig = configContext.getAxisConfiguration();
+
+		System.out.println("GlobalManager instantaited.");
+	}
+
+
+	public boolean isGlobalParameter(String paramName) {
+
+		Parameter parameter = null;
+		parameter = axisConfig.getParameter(paramName);
+
+		if(parameter == null)
+			return false;
+
+		return true;
+	}
+
+
+	public String[] getGlobalParameters(){
+
+		String[] paramters = null;
+
+		try{
+			ArrayList paramList = axisConfig.getParameters();
+			paramters = new String[paramList.size()];
+
+			for (int i = 0; i < paramList.size(); i++) {
+				 Parameter parameter = (Parameter)paramList.get(i);
+				 paramters[i] = parameter.getName() + ":" + parameter.getValue();
+			 }
+
+		}catch(Exception e){
+			e.printStackTrace();
+		}
+
+		return paramters;
+	}
+
+
+	public String addGlobalParameter(String name, String value) {
+
+		String info = "";
+
+		try {
+			Parameter param = new Parameter(name, value);
+			axisConfig.addParameter(param);
+		} catch(Exception e) {
+			info = e.getMessage();
+		}
+
+		return info;
+	}
+
+
+	public String editGlobalParameter(String name, String value) {
+
+		String info = "";
+
+		try{
+			Parameter parameter = axisConfig.getParameter(name);
+			if(parameter == null)
+				throw new Exception("Parameter: " + name + " not found.");
+
+			parameter.setValue(value);
+			info = "Parameter changed successfully.";
+		}catch(Exception e){
+			info = e.getMessage();
+		}
+
+		return info;
+	}
+	
+	
+	// Services
+	
+	public String[] getServices() {
+
+		String[] services = null;
+
+		// get the service list
+		HashMap serviceMap = axisConfig.getServices();
+		if(serviceMap!=null && !serviceMap.isEmpty()) {
+			Collection serviceCollection = serviceMap.values();
+
+			// add name of each service to a string array
+			services = new String[serviceCollection.size()];
+
+			int i=0;
+			for(Iterator iterator=serviceCollection.iterator(); iterator.hasNext();) {
+				AxisService axisService = (AxisService)iterator.next();
+				String serviceName = axisService.getName();
+				services[i] = serviceName;
+				i++;
+			}
+		}
+
+		return services;
+	}
+
+	
+	public String[] getFaultyServices() {
+
+		String[] faultyServices = null;
+
+		Hashtable faultyServicesTable = axisConfig.getFaultyServices();
+		if(faultyServicesTable != null && faultyServicesTable.size() > 0){
+
+			faultyServices = new String[faultyServicesTable.size()];
+			Enumeration eFaultyServices = faultyServicesTable.keys();
+
+			int i=0;
+			while (eFaultyServices.hasMoreElements()) {
+				String faultyServiceName = (String)eFaultyServices.nextElement();
+				faultyServices[i] = faultyServiceName;
+				i++;
+			}
+		}
+
+		return faultyServices;
+	}
+
+
+	public boolean isServiceAvailable(String serviceName) {
+
+		AxisService service = null;
+		try {
+			service = axisConfig.getService(serviceName);
+		} catch(Exception e) {}
+
+		if(service == null)
+			return false;
+
+		return true;
+	}
+
+
+	public String removeService(String serviceName) {
+
+		String info = "Service is successfully removed.";
+
+		try{
+
+			axisConfig.removeService(serviceName);
+			info = "Service: " + serviceName + " removed successfully.";
+
+		}catch(Exception e){
+			info = e.getMessage();
+		}
+
+		return info;
+	}
+	
+	
+	// ServiceGroups
+	
+	public String[] getServiceGroups() {
+
+		String[] serviceGroups = null;
+
+		// get the serviceGroup list
+		ArrayList serviceGroupsList = new ArrayList();
+		Iterator iServiceGroups = axisConfig.getServiceGroups();
+		if(iServiceGroups != null) {
+			while(iServiceGroups.hasNext()) {
+				AxisServiceGroup axisServiceGroup = (AxisServiceGroup)iServiceGroups.next();
+				serviceGroupsList.add(axisServiceGroup.getServiceGroupName());
+			}
+		}
+
+		serviceGroups = (String[])serviceGroupsList.toArray(new String[serviceGroupsList.size()]);
+		return serviceGroups;
+	}
+	
+	
+	// Modules
+	
+	public boolean isModuleAvailable(String moduleName) {
+
+		AxisModule module = null;
+		try {
+			module = axisConfig.getModule(new QName(moduleName));
+		} catch(Exception e) {}
+
+		if(module == null)
+			return false;
+
+		return true;
+	}
+
+
+	public String[] getModules() {
+
+		String[] modules = null;
+		ArrayList moduleList = new ArrayList();
+
+		// get the module list
+		HashMap moduleMap = axisConfig.getModules();
+		if(moduleMap!=null && !moduleMap.isEmpty()){
+			Collection moduleCollection = moduleMap.values();
+
+			modules = new String[moduleCollection.size()];
+			int i=0;
+			for(Iterator iterator=moduleCollection.iterator(); iterator.hasNext();){
+				AxisModule axisModule = (AxisModule)iterator.next();
+				String moduleName = axisModule.getName().getLocalPart();
+
+				modules[i] = moduleName;
+				i++;
+			}
+
+		}
+
+		return modules;
+	}
+
+
+	public String[] getFaultyModules() {
+
+		String[] faultyModules = null;
+
+		Hashtable faultyModulesTable = axisConfig.getFaultyModules();
+		if(faultyModulesTable != null && faultyModulesTable.size() > 0){
+
+			faultyModules = new String[faultyModulesTable.size()];
+			Enumeration eFaultyModules = faultyModulesTable.keys();
+
+			int i = 0;
+			while (eFaultyModules.hasMoreElements()) {
+				String faultyModuleName = (String) eFaultyModules.nextElement();
+				faultyModules[i] = faultyModuleName;
+				i++;
+			}
+		}
+
+		return faultyModules;
+	}
+
+
+	public String[] getGloballyEngagedModules() {
+
+		String[] modules = null;
+		Collection engagedModuleCollection = axisConfig.getEngagedModules();
+
+		if(engagedModuleCollection != null && engagedModuleCollection.size() > 0) {
+
+			modules = new String[engagedModuleCollection.size()];
+
+			int i = 0;
+			for(Iterator iterator=engagedModuleCollection.iterator(); iterator.hasNext();){
+				QName axisModule = (QName) iterator.next();
+				String moduleName = axisModule.getLocalPart();
+
+				modules[i] = moduleName;
+				i++;
+			}
+		}
+
+		return modules;
+	}
+	
+	
+	public String engageModuleGlobally(String moduleName) {
+
+		String info = "";
+
+		try{
+			axisConfig.engageModule(new QName(moduleName));
+			info = "Module: " + moduleName + " globally enagaged successfully.";
+		}
+		catch(AxisFault axisFault){
+			info = "Module: " + moduleName + " failed to engage globally.\n" + axisFault.getMessage();
+		}
+
+		return info;
+	}
+
+	
+	// Transports
+	
+	public String[] getTransportIns(){
+
+		String[] transportIns = null;
+		ArrayList transportInList = new ArrayList();
+
+		// get the transportIn list
+		HashMap transportInMap = axisConfig.getTransportsIn();
+		if(transportInMap!=null && !transportInMap.isEmpty()){
+			Collection transportInCollection = transportInMap.values();
+
+			transportIns = new String[transportInCollection.size()];
+			int i=0;
+			for(Iterator iterator=transportInCollection.iterator(); iterator.hasNext();){
+				TransportInDescription axisTransportIn = (TransportInDescription)iterator.next();
+				String transportInName = axisTransportIn.getName().getLocalPart();
+
+				transportIns[i] = transportInName;
+				i++;
+			}
+
+		}
+
+		return transportIns;
+	}
+
+
+	public String[] getTransportOuts(){
+
+		String[] transportOuts = null;
+		ArrayList transportOutList = new ArrayList();
+
+		// get the transportOut list
+		HashMap transportOutMap = axisConfig.getTransportsOut();
+		if(transportOutMap!=null && !transportOutMap.isEmpty()){
+			Collection transportOutCollection = transportOutMap.values();
+
+			transportOuts = new String[transportOutCollection.size()];
+			int i=0;
+			for(Iterator iterator=transportOutCollection.iterator(); iterator.hasNext();){
+				TransportOutDescription axisTransportOut = (TransportOutDescription)iterator.next();
+				String transportOutName = axisTransportOut.getName().getLocalPart();
+
+				transportOuts[i] = transportOutName;
+				i++;
+			}
+
+		}
+
+		return transportOuts;
+	}
+
+
+	public boolean isTransportInAvailable(String transportInName) {
+
+		TransportInDescription transportIn = null;
+		try {
+			transportIn = axisConfig.getTransportIn(new QName(transportInName));
+		} catch(Exception e) {}
+
+		if(transportIn == null)
+			return false;
+
+		return true;
+	}
+
+
+	public boolean isTransportOutAvailable(String transportOutName) {
+
+		TransportOutDescription transportOut = null;
+		try {
+			transportOut = axisConfig.getTransportOut(new QName(transportOutName));
+		} catch(Exception e) {}
+
+		if(transportOut == null)
+			return false;
+
+		return true;
+	}
+
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ModuleManager.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ModuleManager.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ModuleManager.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ModuleManager.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,211 @@
+package org.apache.axis2.management.core.managers;
+
+
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.AxisOperation;
+import org.apache.axis2.description.AxisModule;
+import org.apache.axis2.description.Parameter;
+import org.apache.axis2.AxisFault;
+
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Collection;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+
+
+public class ModuleManager {
+
+
+	private ConfigurationContext configContext = null;
+	private AxisConfiguration axisConfig = null;	
+
+
+	public ModuleManager(ConfigurationContext configContext) {
+		this.configContext = configContext;
+		this.axisConfig = configContext.getAxisConfiguration();
+
+		System.out.println("BasicManager instantaited.");
+	}
+	
+	
+	public String isEngagedGlobally(String moduleName) {
+		
+		String result = "FALSE";
+		Collection engagedModuleCollection = axisConfig.getEngagedModules();
+		if(engagedModuleCollection.contains(new QName(moduleName))) {
+			result = "TRUE";
+		}
+		
+		return result;
+	}
+	
+	
+	public String[] getEngagedServices(String moduleName) {
+		
+		ArrayList engagedServicesList = new ArrayList();
+		
+		if(isEngagedGlobally(moduleName).equals("FALSE")) {
+			HashMap serviceMap = axisConfig.getServices();
+			if(serviceMap!=null && !serviceMap.isEmpty()) {
+				Collection serviceCollection = serviceMap.values();
+				
+				for(Iterator iterator=serviceCollection.iterator(); iterator.hasNext();) {
+					AxisService axisService = (AxisService)iterator.next();
+					Collection engagedModuleCollection = axisService.getEngagedModules();
+					for(Iterator serviceModuleIterator=engagedModuleCollection.iterator(); serviceModuleIterator.hasNext();){
+						AxisModule moduleDesc = (AxisModule)serviceModuleIterator.next();
+						QName axisModule = moduleDesc.getName();
+						if(axisModule.getLocalPart().equals(moduleName)) {
+							engagedServicesList.add(axisService.getName());
+						}
+					}
+				}
+			}
+		}
+		
+		String[] engagedServices = (String[])engagedServicesList.toArray(new String[engagedServicesList.size()]);
+		return engagedServices;
+	}
+	
+	
+	public String[] getEngagedOperations(String moduleName) {
+		
+		ArrayList engagedOperationsList = new ArrayList();
+		
+		HashMap serviceMap = axisConfig.getServices();
+		if(serviceMap!=null && !serviceMap.isEmpty()) {
+			Collection serviceCollection = serviceMap.values();
+			
+			for(Iterator iterator=serviceCollection.iterator(); iterator.hasNext();) {
+				AxisService axisService = (AxisService)iterator.next();
+				Collection engagedModuleCollection = axisService.getEngagedModules();
+				
+				boolean serviceLevel = false;
+				for(Iterator serviceModuleIterator=engagedModuleCollection.iterator(); serviceModuleIterator.hasNext();){
+					AxisModule moduleDesc = (AxisModule)serviceModuleIterator.next();
+					QName axisModule = moduleDesc.getName();
+					if(axisModule.getLocalPart().equals(moduleName)) {
+						serviceLevel = true;
+						break;
+					}
+				}
+				
+				if(!serviceLevel) {
+					// module is not engaged to this service.
+					// so find out if it is engaged to any operations
+					
+					Iterator operations = null;
+					
+					try {
+						operations = axisService.getOperations();
+					} catch(Exception e) {
+						e.printStackTrace();
+					}
+
+					if(operations != null) {
+
+						//Collection operationsCollection = operationsMap.values();
+
+						while(operations.hasNext()){
+							AxisOperation axisOperation = (AxisOperation)operations.next();
+							
+							Collection operationEngagedModules = axisOperation.getEngagedModules();
+							for(Iterator operationModuleIterator=operationEngagedModules.iterator(); operationModuleIterator.hasNext();){
+								AxisModule operationModuleDesc = (AxisModule)operationModuleIterator.next();
+								QName axisOperationModule = operationModuleDesc.getName();
+								if(axisOperationModule.getLocalPart().equals(moduleName)) {
+									engagedOperationsList.add(axisService.getName()+"."+axisOperation.getName().getLocalPart());
+								}
+							}
+						}
+					
+					}
+				}
+			}
+		}
+		
+		String[] engagedOperations = (String[])engagedOperationsList.toArray(new String[engagedOperationsList.size()]);
+		return engagedOperations;
+	}	
+
+
+	public String[] getModuleParameters(String moduleName) {
+
+		String[] paramters = null;
+
+		try{
+			AxisModule moduleDesc = axisConfig.getModule(new QName(moduleName));
+			ArrayList paramList = moduleDesc.getParameters();
+			paramters = new String[paramList.size()];
+
+			for (int i = 0; i < paramList.size(); i++) {
+				 Parameter parameter = (Parameter)paramList.get(i);
+				 paramters[i] = parameter.getName() + ":" + parameter.getValue();
+			 }
+
+		}catch(Exception e){
+			e.printStackTrace();
+		}
+
+		return paramters;
+	}
+
+
+	public boolean isModuleParameter(String moduleName, String paramName) {
+
+		Parameter parameter = null;
+
+		try {
+			AxisModule moduleDesc = axisConfig.getModule(new QName(moduleName));
+			parameter = moduleDesc.getParameter(paramName);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+
+		if(parameter == null)
+			return false;
+
+		return true;
+	}
+
+
+	public void addModuleParameter(String moduleName, String name, String value) {
+
+		try {
+			Parameter param = new Parameter(name, value);
+			AxisModule moduleDesc = axisConfig.getModule(new QName(moduleName));
+			moduleDesc.addParameter(param);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+	}
+
+
+	public String editModuleParameter(String moduleName, String parameterName, String value) {
+
+		String info = "";
+
+		try{
+
+			AxisModule moduleDesc = axisConfig.getModule(new QName(moduleName));
+			Parameter parameter = moduleDesc.getParameter(parameterName);
+			if(parameter == null)
+				throw new Exception("Parameter: " + parameterName + " not found.");
+
+			parameter.setValue(value);
+			info = "Paramter changed successfully.";
+
+		}catch(Exception e){
+			info = e.getMessage();
+		}
+
+		return info;
+	}
+
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/OperationManager.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/OperationManager.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/OperationManager.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/OperationManager.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,170 @@
+package org.apache.axis2.management.core.managers;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.apache.axis2.description.AxisModule;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.AxisOperation;
+import org.apache.axis2.description.Parameter;
+
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Collection;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+
+
+public class OperationManager {
+
+
+	private ConfigurationContext configContext = null;
+	private AxisConfiguration axisConfig = null;
+
+
+	public OperationManager(ConfigurationContext configContext) {
+		this.configContext = configContext;
+		this.axisConfig = configContext.getAxisConfiguration();
+
+		System.out.println("OperationManager instantaited.");
+	}
+	
+
+	public String[] getOperationParameters(String serviceName, String operationName){
+
+		String[] paramters = null;
+
+		try{
+			AxisService axisService = axisConfig.getService(serviceName);
+			AxisOperation axisOperation = axisService.getOperation(new QName(operationName));
+			ArrayList paramList = axisOperation.getParameters();
+			paramters = new String[paramList.size()];
+
+			for (int i = 0; i < paramList.size(); i++) {
+				 Parameter parameter = (Parameter)paramList.get(i);
+				 paramters[i] = parameter.getName() + ":" + parameter.getValue();
+			 }
+
+		}catch(Exception e){
+			e.printStackTrace();
+		}
+
+		return paramters;
+	}
+
+
+	public boolean isOperationParameter(String serviceName, String operationName, String paramName) {
+
+		Parameter parameter = null;
+		
+		try {
+			AxisService axisService = axisConfig.getService(serviceName);
+			AxisOperation axisOperation = axisService.getOperation(new QName(operationName));
+			parameter = axisOperation.getParameter(paramName);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+
+		if(parameter == null)
+			return false;
+
+		return true;
+	}
+
+
+	public void addOperationParameter(String serviceName, String operationName, String name, String value) {
+		
+		try {
+			Parameter param = new Parameter(name, value);
+			AxisService axisService = axisConfig.getService(serviceName);
+			AxisOperation axisOperation = axisService.getOperation(new QName(operationName));
+			axisOperation.addParameter(param);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+	}
+
+
+	public String editOperationParameter(String serviceName, String operationName, String parameterName, String value) {
+
+		String info = "";
+
+		try{
+
+			AxisService axisService = axisConfig.getService(serviceName);
+			AxisOperation axisOperation = axisService.getOperation(new QName(operationName));
+			Parameter parameter = axisOperation.getParameter(parameterName);
+			if(parameter == null)
+				throw new Exception("Parameter: " + parameterName + " not found.");
+
+			parameter.setValue(value);
+			info = "Parameter changed successfully.";
+
+		}catch(Exception e){
+			info = e.getMessage();
+		}
+
+		return info;
+	}
+
+	
+	// Modules
+	
+	public String[] getOperationEngagedModules(String serviceName, String opName) {
+
+		String[] modules = null;
+
+		try {
+
+			AxisService service = axisConfig.getService(serviceName);
+			AxisOperation op = service.getOperation(new QName(opName));
+			Collection engagedModuleCollection = op.getEngagedModules();
+
+			if(engagedModuleCollection != null && engagedModuleCollection.size() > 0) {
+
+				modules = new String[engagedModuleCollection.size()];
+
+				int i = 0;
+				for(Iterator iterator=engagedModuleCollection.iterator(); iterator.hasNext();){
+					AxisModule moduleDesc = (AxisModule)iterator.next();
+					QName axisModule = moduleDesc.getName();
+					String moduleName = axisModule.getLocalPart();
+
+					modules[i] = moduleName;
+					i++;
+				}
+			}
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+
+		return modules;
+	}
+	
+	
+	public String engageModuleToOperation(String moduleName, String serviceName, String operationName) {
+
+		String info = "";
+
+		if ( moduleName != null && serviceName != null && operationName != null) {
+			try {
+				AxisOperation operation = axisConfig.getService(serviceName).getOperation(new QName(operationName));
+				operation.engageModule(axisConfig.getModule(new QName(moduleName)), axisConfig);
+
+				info = moduleName + " module engaged to the operation Successfully";
+
+			} catch (AxisFault axisFault) {
+				info = info = "Failed to engage the module " + moduleName + " to the operation " + operationName + "\n" + axisFault.getMessage();
+			}
+		}
+
+		return info;
+	}
+
+}
+
+
+	
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ServiceGroupManager.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ServiceGroupManager.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ServiceGroupManager.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ServiceGroupManager.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,95 @@
+package org.apache.axis2.management.core.managers;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.apache.axis2.description.AxisServiceGroup;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.AxisModule;
+import org.apache.axis2.description.Parameter;
+
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Collection;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+
+public class ServiceGroupManager {
+
+
+	private ConfigurationContext configContext = null;
+	private AxisConfiguration axisConfig = null;
+
+
+	public ServiceGroupManager(ConfigurationContext configContext) {
+		this.configContext = configContext;
+		this.axisConfig = configContext.getAxisConfiguration();
+
+		System.out.println("ServiceGroupManager instantaited.");
+	}
+	
+	
+	public String[] getServices(String serviceGroupName) {
+
+		String[] services = null;
+
+		AxisServiceGroup axisServiceGroup = axisConfig.getServiceGroup(serviceGroupName);
+		// get the service list
+		ArrayList servicesList = new ArrayList();
+		Iterator iServices = axisServiceGroup.getServices();
+		if(iServices != null) {
+			while(iServices.hasNext()) {
+				AxisService axisService = (AxisService)iServices.next();
+				servicesList.add(axisService.getName());
+			}
+		}
+
+		services = (String[])servicesList.toArray(new String[servicesList.size()]);
+		return services;
+	}
+
+	
+	// Modules
+	
+	public String[] getServiceGroupEngagedModules(String serviceGroupName) {
+		
+		AxisServiceGroup axisServiceGroup = axisConfig.getServiceGroup(serviceGroupName);
+		ArrayList engagedModulesList = axisServiceGroup.getEngagedModules();
+		String[] engagedModules = null;
+		
+		if(engagedModulesList != null) {
+			engagedModules = new String[engagedModulesList.size()];
+			for(int i=0; i<engagedModulesList.size(); i++) {
+				QName module = (QName)engagedModulesList.get(i);
+				engagedModules[i] = module.getLocalPart();
+			}
+		}
+		
+		return engagedModules;
+	}
+	
+	
+	public String engageModuleToServiceGroup(String moduleName, String serviceGroupName) {
+		
+		String info = "";
+
+		if ( moduleName != null && serviceGroupName != null) {
+
+			try {
+				
+				AxisServiceGroup axisServiceGroup = axisConfig.getServiceGroup(serviceGroupName);
+				axisServiceGroup.engageModule(axisConfig.getModule(new QName(moduleName)));
+				info = "Module " + moduleName + " is successfully engaged to the ServiceGroup " + serviceGroupName;
+
+			} catch (AxisFault axisFault) {
+				info = "Failed to engage the module " + moduleName + " to the ServiceGroup " + serviceGroupName + "\n" + axisFault.getMessage();
+			}
+      	}
+
+		return info;
+
+	}
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ServiceManager.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ServiceManager.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ServiceManager.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/ServiceManager.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,204 @@
+package org.apache.axis2.management.core.managers;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.AxisOperation;
+import org.apache.axis2.description.AxisModule;
+import org.apache.axis2.description.Parameter;
+
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Collection;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+
+public class ServiceManager {
+
+
+	private ConfigurationContext configContext = null;
+	private AxisConfiguration axisConfig = null;
+
+
+	public ServiceManager(ConfigurationContext configContext) {
+		this.configContext = configContext;
+		this.axisConfig = configContext.getAxisConfiguration();
+
+		System.out.println("BasicManager instantaited.");
+	}
+
+
+	public String[] getServiceParameters(String serviceName) {
+
+		String[] paramters = null;
+
+		try{
+			AxisService axisService = axisConfig.getService(serviceName);
+			ArrayList paramList = axisService.getParameters();
+			paramters = new String[paramList.size()];
+
+			for (int i = 0; i < paramList.size(); i++) {
+				 Parameter parameter = (Parameter)paramList.get(i);
+				 paramters[i] = parameter.getName() + ":" + parameter.getValue();
+			 }
+
+		}catch(Exception e){
+			e.printStackTrace();
+		}
+
+		return paramters;
+	}
+
+
+	public boolean isServiceParameter(String serviceName, String paramName) {
+
+		Parameter parameter = null;
+
+		try {
+			AxisService axisService = axisConfig.getService(serviceName);
+			parameter = axisService.getParameter(paramName);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+
+		if(parameter == null)
+			return false;
+
+		return true;
+	}
+
+
+	public void addServiceParameter(String serviceName, String name, String value) {
+
+		try {
+			Parameter param = new Parameter(name, value);
+			AxisService axisService = axisConfig.getService(serviceName);
+			axisService.addParameter(param);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+	}
+
+
+	public String editServiceParameter(String serviceName, String parameterName, String value) {
+
+		String info = "";
+
+		try{
+
+			AxisService axisService = axisConfig.getService(serviceName);
+			Parameter parameter = axisService.getParameter(parameterName);
+			if(parameter == null)
+				throw new Exception("Parameter: " + parameterName + " not found.");
+
+			parameter.setValue(value);
+			info = "Paramter changed successfully.";
+
+		}catch(Exception e){
+			info = e.getMessage();
+		}
+
+		return info;
+	}
+	
+	
+	// Operations
+	
+	public String[] getOperations(String serviceName) {
+
+		Iterator operations = null;
+		try {
+			operations = axisConfig.getService(serviceName).getOperations();
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+
+		ArrayList operationsList = new ArrayList();
+		if(operations !=null){
+
+			while(operations.hasNext()) {
+				AxisOperation axisOperation = (AxisOperation)operations.next();
+				operationsList.add(axisOperation.getName().getLocalPart());
+			}
+		}
+
+		return (String[])operationsList.toArray(new String[operationsList.size()]);
+	}
+	
+	
+	public boolean isOperationAvailable(String serviceName, String operationName) {
+
+		AxisService service = null;
+		AxisOperation operation = null;
+		try {
+			service = axisConfig.getService(serviceName);
+			if(service == null)
+				return false;
+
+			operation = service.getOperation(new QName(operationName));
+			if(operation == null)
+				return false;
+
+		} catch(Exception e) {}
+
+		return true;
+	}
+	
+	
+	// Modules
+	
+	public String[] getServiceEngagedModules(String serviceName) {
+
+		String[] modules = null;
+
+		try {
+
+			AxisService service = axisConfig.getService(serviceName);
+			Collection engagedModuleCollection = service.getEngagedModules();
+
+			if(engagedModuleCollection != null && engagedModuleCollection.size() > 0) {
+
+				modules = new String[engagedModuleCollection.size()];
+
+				int i = 0;
+				for(Iterator iterator=engagedModuleCollection.iterator(); iterator.hasNext();){
+					AxisModule moduleDesc = (AxisModule)iterator.next();
+					QName axisModule = moduleDesc.getName();
+					String moduleName = axisModule.getLocalPart();
+
+					modules[i] = moduleName;
+					i++;
+				}
+			}
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+
+		return modules;
+	}
+	
+	
+	public String engageModuleToService(String moduleName, String serviceName) {
+
+		String info = "";
+
+		if ( moduleName != null && serviceName != null) {
+
+			try {
+
+				axisConfig.getService(serviceName).engageModule(axisConfig.getModule(new QName(moduleName)), axisConfig);
+				info = "Module " + moduleName + " is successfully engaged to the service " + serviceName;
+
+			} catch (AxisFault axisFault) {
+				info = "Failed to engage the module " + moduleName + " to the service " + serviceName + "\n" + axisFault.getMessage();
+			}
+      		  }
+
+		return info;
+	}
+
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/TransportManager.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/TransportManager.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/TransportManager.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/managers/TransportManager.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,183 @@
+package org.apache.axis2.management.core.managers;
+
+
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.apache.axis2.description.TransportInDescription;
+import org.apache.axis2.description.TransportOutDescription;
+import org.apache.axis2.description.Parameter;
+
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Collection;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+
+
+public class TransportManager {
+
+
+	private ConfigurationContext configContext = null;
+	private AxisConfiguration axisConfig = null;
+
+
+	public TransportManager(ConfigurationContext configContext) {
+		this.configContext = configContext;
+		this.axisConfig = configContext.getAxisConfiguration();
+
+		System.out.println("TransportManager instantaited.");
+	}
+
+
+	public String[] getTransportInParameters(String transportInName) {
+
+		String[] paramters = null;
+
+		try{
+			TransportInDescription transportInDesc = axisConfig.getTransportIn(new QName(transportInName));
+			ArrayList paramList = transportInDesc.getParameters();
+			paramters = new String[paramList.size()];
+
+			for (int i = 0; i < paramList.size(); i++) {
+				 Parameter parameter = (Parameter)paramList.get(i);
+				 paramters[i] = parameter.getName() + ":" + parameter.getValue();
+			 }
+
+		}catch(Exception e){
+			e.printStackTrace();
+		}
+
+		return paramters;
+	}
+
+
+	public boolean isTransportInParameter(String transportInName, String paramName) {
+
+		Parameter parameter = null;
+
+		try {
+			TransportInDescription transportInDesc = axisConfig.getTransportIn(new QName(transportInName));
+			parameter = transportInDesc.getParameter(paramName);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+
+		if(parameter == null)
+			return false;
+
+		return true;
+	}
+
+
+	public void addTransportInParameter(String transportInName, String name, String value) {
+
+		try {
+			Parameter param = new Parameter(name, value);
+			TransportInDescription transportInDesc = axisConfig.getTransportIn(new QName(transportInName));
+			transportInDesc.addParameter(param);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+	}
+
+
+	public String editTransportInParameter(String transportInName, String parameterName, String value) {
+
+		String info = "";
+
+		try{
+
+			TransportInDescription transportInDesc = axisConfig.getTransportIn(new QName(transportInName));
+			Parameter parameter = transportInDesc.getParameter(parameterName);
+			if(parameter == null)
+				throw new Exception("Parameter: " + parameterName + " not found.");
+
+			parameter.setValue(value);
+			info = "Paramter changed successfully.";
+
+		}catch(Exception e){
+			info = e.getMessage();
+		}
+
+		return info;
+	}
+
+
+	public String[] getTransportOutParameters(String transportOutName) {
+
+		String[] paramters = null;
+
+		try{
+			TransportOutDescription transportOutDesc = axisConfig.getTransportOut(new QName(transportOutName));
+			ArrayList paramList = transportOutDesc.getParameters();
+			paramters = new String[paramList.size()];
+
+			for (int i = 0; i < paramList.size(); i++) {
+				 Parameter parameter = (Parameter)paramList.get(i);
+				 paramters[i] = parameter.getName() + ":" + parameter.getValue();
+			 }
+
+		}catch(Exception e){
+			e.printStackTrace();
+		}
+
+		return paramters;
+	}
+
+
+	public boolean isTransportOutParameter(String transportOutName, String paramName) {
+
+		Parameter parameter = null;
+
+		try {
+			TransportOutDescription transportOutDesc = axisConfig.getTransportOut(new QName(transportOutName));
+			parameter = transportOutDesc.getParameter(paramName);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+
+		if(parameter == null)
+			return false;
+
+		return true;
+	}
+
+
+	public void addTransportOutParameter(String transportOutName, String name, String value) {
+
+		try {
+			Parameter param = new Parameter(name, value);
+			TransportOutDescription transportOutDesc = axisConfig.getTransportOut(new QName(transportOutName));
+			transportOutDesc.addParameter(param);
+		} catch(Exception e) {
+			e.printStackTrace();
+		}
+	}
+
+
+	public String editTransportOutParameter(String transportOutName, String parameterName, String value) {
+
+		String info = "";
+
+		try{
+
+			TransportOutDescription transportOutDesc = axisConfig.getTransportOut(new QName(transportOutName));
+			Parameter parameter = transportOutDesc.getParameter(parameterName);
+			if(parameter == null)
+				throw new Exception("Parameter: " + parameterName + " not found.");
+
+			parameter.setValue(value);
+			info = "Paramter changed successfully.";
+
+		}catch(Exception e){
+			info = e.getMessage();
+		}
+
+		return info;
+	}
+
+
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/utils/OperationStats.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/utils/OperationStats.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/utils/OperationStats.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/utils/OperationStats.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,74 @@
+
+package org.apache.axis2.management.core.utils;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.MessageContext;
+
+public class OperationStats {
+	
+	private int inMessages = 0;
+	private int outMessages = 0;
+	private int inFaultMessages = 0;
+	private int outFaultMessages = 0;
+	
+	public OperationStats() {
+	}
+	
+	public int getInMessages() {
+		return inMessages;
+	}
+	
+
+	public void clearInMessages() {
+		inMessages = 0;
+	}
+	
+	
+	public int getOutMessages() {
+		return outMessages;
+	}
+	
+
+	public void clearOutMessages() {
+		outMessages = 0;
+	}
+	
+	
+	public int getFaultInMessages() {
+		return inFaultMessages;
+	}
+	
+
+	public void clearFaultInMessages() {
+		inFaultMessages = 0;
+	}
+	
+	
+	public int getFaultOutMessages() {
+		return outFaultMessages;
+	}
+	
+
+	public void clearFaultOutMessages() {
+		outFaultMessages = 0;
+	}
+	
+	
+	public void updateStats(MessageContext msgContext) {
+		// monitor operation level requests
+		if(msgContext.getFLOW() == MessageContext.IN_FLOW) {
+			inMessages++;
+			
+			if(msgContext.isProcessingFault()) {
+				inFaultMessages++;
+			}
+		} else if(msgContext.getFLOW() == MessageContext.OUT_FLOW) {
+			outMessages++;
+			
+			if(msgContext.isProcessingFault()) {
+				outFaultMessages++;
+			}
+		}
+	}
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/utils/ServiceStats.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/utils/ServiceStats.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/utils/ServiceStats.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/core/utils/ServiceStats.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,115 @@
+
+package org.apache.axis2.management.core.utils;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.MessageContext;
+
+import java.util.HashMap;
+
+
+public class ServiceStats {
+
+	private HashMap operationStatsMap = null;
+	private int inMessages = 0;
+	private int outMessages = 0;
+	private int inFaultMessages = 0;
+	private int outFaultMessages = 0;
+	
+	
+	public ServiceStats() {
+		operationStatsMap = new HashMap();
+	}
+	
+	
+	public int getInMessages() {
+		return inMessages;
+	}
+	
+
+	public void clearInMessages() {
+		inMessages = 0;
+	}
+	
+	
+	public int getOutMessages() {
+		return outMessages;
+	}
+	
+
+	public void clearOutMessages() {
+		outMessages = 0;
+	}
+	
+	
+	public int getFaultInMessages() {
+		return inFaultMessages;
+	}
+	
+
+	public void clearFaultInMessages() {
+		inFaultMessages = 0;
+	}
+	
+	
+	public int getFaultOutMessages() {
+		return outFaultMessages;
+	}
+	
+
+	public void clearFaultOutMessages() {
+		outFaultMessages = 0;
+	}
+	
+	
+	public HashMap getMonitoredOperations() {
+		return operationStatsMap;
+	}
+	
+	
+	public void updateStats(MessageContext msgContext) {
+		// monitor service level requests
+		if(msgContext.getFLOW() == MessageContext.IN_FLOW) {
+			inMessages++;
+			
+			if(msgContext.isProcessingFault()) {
+				inFaultMessages++;
+			}
+		} else if(msgContext.getFLOW() == MessageContext.OUT_FLOW) {
+			outMessages++;
+			
+			if(msgContext.isProcessingFault()) {
+				outFaultMessages++;
+			}
+		}
+
+		// monitor operation level requests
+		String operationName = msgContext.getAxisOperation().getName().getLocalPart();
+		OperationStats operationStats = (OperationStats)operationStatsMap.get(operationName);
+		if(operationStats != null) {
+			operationStats.updateStats(msgContext);
+		}
+	}
+	
+	
+	public void setOperationToMonitor(String operationName) {
+
+		if(!operationStatsMap.containsKey(operationName)) {
+			OperationStats operationStats = new OperationStats();
+			operationStatsMap.put(operationName, operationStats);
+		}	
+	}
+	
+	
+	public OperationStats getMonitoredOperation(String operationName) throws AxisFault {
+
+		OperationStats operationStats = (OperationStats)operationStatsMap.get(operationName);
+		
+		if(operationStats == null) {
+			throw new AxisFault("Operation not monitored.");
+		}
+
+		return operationStats;
+	}
+
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AbstractDMService.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AbstractDMService.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AbstractDMService.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AbstractDMService.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,126 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.GlobalManager;
+import org.apache.axis2.management.core.managers.ModuleManager;
+import org.apache.axis2.management.core.managers.TransportManager;
+import org.apache.axis2.management.core.managers.ServiceGroupManager;
+import org.apache.axis2.management.core.managers.ServiceManager;
+import org.apache.axis2.management.core.managers.OperationManager;
+import org.apache.axis2.management.core.managers.DynamicStatsManager;
+
+
+import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.context.ConfigurationContext;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AbstractDMService {
+	
+	
+	private MessageContext msgContext = null;
+	private ConfigurationContext configContext = null;
+
+	
+	public void init(MessageContext context) {
+		msgContext = context;
+		configContext = context.getConfigurationContext();
+	}
+	
+	
+	public GlobalManager getGlobalManager() {
+		return (GlobalManager)configContext.getProperty("global_manager");
+	}
+	
+	
+	public ModuleManager getModuleManager() {
+		return (ModuleManager)configContext.getProperty("module_manager");
+	}
+	
+	
+	public TransportManager getTransportManager() {
+		return (TransportManager)configContext.getProperty("transport_manager");
+	}
+	
+	
+	public ServiceGroupManager getServiceGroupManager() {
+		return (ServiceGroupManager)configContext.getProperty("servicegroup_manager");
+	}
+	
+	
+	public ServiceManager getServiceManager() {
+		return (ServiceManager)configContext.getProperty("service_manager");
+	}
+	
+	
+	public OperationManager getOperationManager() {
+		return (OperationManager)configContext.getProperty("operation_manager");
+	}
+	
+	
+	public DynamicStatsManager getDynamicStatsManager() {
+		return (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+	}
+
+
+	public String[] getParameters(OMElement element) {
+
+		element.build();
+		element.detach();
+
+		ArrayList parameterList = new ArrayList();
+		Iterator iterator = element.getChildren();
+		
+		while(iterator.hasNext()) {
+			OMElement value = (OMElement)iterator.next();
+			parameterList.add(value.getText());
+		}
+
+		String[] parameters = (String[])parameterList.toArray(new String[parameterList.size()]);
+		return parameters;
+	}
+
+
+	public OMElement packValues(String[] values) {
+
+		OMElement element = null;
+		if(values != null) {
+			OMFactory fac = OMAbstractFactory.getOMFactory();
+			OMNamespace omNs = fac.createOMNamespace("http://org.apache.axis2.management.axisservices", "axisservices");
+			element = fac.createOMElement("AxisServices", omNs);
+	
+			for(int i=0; i< values.length; i++) {
+				OMElement value = fac.createOMElement("value", omNs);
+				value.addChild(fac.createText(value, values[i]));
+	
+				element.addChild(value);
+			}
+		} else {
+			element = packValues(new String[]{});
+		}
+
+		return element;
+	}
+
+
+	public OMElement packValue(String value) {
+
+		OMFactory fac = OMAbstractFactory.getOMFactory();
+		OMNamespace omNs = fac.createOMNamespace("http://org.apache.axis2.management.axisservices", "axisservices");
+		OMElement element = fac.createOMElement("AxisServices", omNs);
+
+		OMElement valueElement = fac.createOMElement("value", omNs);
+		valueElement.addChild(fac.createText(valueElement, value));
+		element.addChild(valueElement);
+
+		return element;
+	}
+
+}
\ No newline at end of file

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisDynamicStats.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisDynamicStats.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisDynamicStats.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisDynamicStats.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,98 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.DynamicStatsManager;
+import org.apache.axis2.management.core.utils.ServiceStats;
+import org.apache.axis2.management.core.utils.OperationStats;
+
+import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.context.ConfigurationContext;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import java.util.Iterator;
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AxisDynamicStats extends AbstractDMService {
+
+	private MessageContext msgContext = null;
+	private ConfigurationContext configContext = null;
+
+	public void init(MessageContext context) {
+		msgContext = context;
+		configContext = context.getConfigurationContext();
+	}
+
+
+	public OMElement getInfo() throws XMLStreamException {
+
+		System.out.println("INFO: " + msgContext.getAxisService().getName());
+
+		return packValue("This is the AxisDynamicStats service.");
+	}
+	
+	
+	public OMElement getMonitoredData() {
+		ArrayList monitoredData = new ArrayList();
+		
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		String globalData = new String("All:Axis2:" + dynamicStatsManager.getInMessages() +
+								":" + dynamicStatsManager.getOutMessages() +
+								":" + dynamicStatsManager.getFaultInMessages() +
+								":" + dynamicStatsManager.getFaultOutMessages());
+		monitoredData.add(globalData);
+		
+		HashMap serviceMap = dynamicStatsManager.getMonitoredServices();
+		Iterator serviceIterator = serviceMap.keySet().iterator();
+		
+		while(serviceIterator.hasNext()) {
+			String serviceName = (String)serviceIterator.next();
+			StringBuffer serviceData = new StringBuffer("Service:" + serviceName);
+			ServiceStats serviceStats = (ServiceStats)serviceMap.get(serviceName);
+			serviceData.append(":" + serviceStats.getInMessages() +
+								":" + serviceStats.getOutMessages() +
+								":" + serviceStats.getFaultInMessages() +
+								":" + serviceStats.getFaultOutMessages());
+			monitoredData.add(serviceData.toString());
+			
+			HashMap operationMap = serviceStats.getMonitoredOperations();
+			Iterator operationIterator = operationMap.keySet().iterator();
+			
+			while(operationIterator.hasNext()) {
+				String operationName = (String)operationIterator.next();
+				OperationStats operationStats = (OperationStats)operationMap.get(operationName);
+				
+				String operationData = "Operation:" + serviceName + "." + operationName + 
+										":" + operationStats.getInMessages() + 
+										":" + operationStats.getOutMessages() +
+										":" + operationStats.getFaultInMessages() +
+										":" + operationStats.getFaultOutMessages();
+				monitoredData.add(operationData);
+			}
+		}
+		
+		String[] stringData = (String[])monitoredData.toArray(new String[monitoredData.size()]);
+		return packValues(stringData);
+	}
+	
+		
+	public OMElement getInMessages() throws XMLStreamException {
+		
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		int totalRequests = dynamicStatsManager.getInMessages();
+
+		return packValue(new Integer(totalRequests).toString());
+	}
+	
+	
+	public void clearInMessages() throws XMLStreamException {
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		dynamicStatsManager.clearInMessages();		
+	}
+
+}

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisGlobals.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisGlobals.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisGlobals.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisGlobals.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,236 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.GlobalManager;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AxisGlobals extends AbstractDMService {
+
+
+	public OMElement getInfo() throws XMLStreamException {
+		return packValue("This is the AxisGlobals global management web global.");
+	}
+
+	
+	public OMElement getGlobalParameters() throws XMLStreamException {
+		
+		GlobalManager globalManager = getGlobalManager();
+		String[] globalParameters = globalManager.getGlobalParameters();
+
+		return packValues(globalParameters);
+	}
+
+
+	public OMElement isGlobalParameter(OMElement element) {
+
+		String[] params = getParameters(element);
+
+		GlobalManager globalManager = getGlobalManager();
+		boolean available = globalManager.isGlobalParameter(params[0]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+
+
+	public OMElement addGlobalParameter(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		GlobalManager globalManager = getGlobalManager();
+		globalManager.addGlobalParameter(params[0], params[1]);
+
+		return packValue("OUT NOT AVAILABLE");
+	}
+
+
+	public OMElement editGlobalParameter(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		GlobalManager globalManager = getGlobalManager();
+		String result = globalManager.editGlobalParameter(params[0], params[1]);
+
+		return packValue(result);
+	}
+	
+	
+	// Services
+	
+	public OMElement getServices() throws XMLStreamException {
+
+		GlobalManager globalManager = getGlobalManager();
+		String[] services = globalManager.getServices();
+
+		return packValues(services);
+	}
+
+
+	public OMElement getFaultyServices() throws XMLStreamException {
+
+		GlobalManager globalManager = getGlobalManager();
+		String[] faultyServices = globalManager.getFaultyServices();
+
+		return packValues(faultyServices);
+	}
+
+	
+	public OMElement isServiceAvailable(OMElement pElement) {
+
+		String[] params = getParameters(pElement);
+
+		GlobalManager globalManager = getGlobalManager();
+		boolean available = globalManager.isServiceAvailable(params[0]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+
+
+	public OMElement removeService(OMElement pElement) throws XMLStreamException {
+		
+		String[] params = getParameters(pElement);
+		
+		GlobalManager globalManager = getGlobalManager();
+		String result = globalManager.removeService(params[0]);
+
+		return packValue(result);
+	}
+	
+	
+	// ServiceGroups
+	
+	public OMElement getServiceGroups() throws XMLStreamException {
+		
+		GlobalManager globalManager = getGlobalManager();
+		String[] serviceGroups = globalManager.getServiceGroups();
+
+		return packValues(serviceGroups);
+	}
+	
+	
+	// Modules
+	
+	public OMElement getModules() throws XMLStreamException {
+
+		GlobalManager globalManager = getGlobalManager();
+		String[] modules = globalManager.getModules();
+
+		return packValues(modules);
+	}
+
+
+	public OMElement getFaultyModules() throws XMLStreamException {
+
+		GlobalManager globalManager = getGlobalManager();
+		String[] faultyModules = globalManager.getFaultyModules();
+
+		return packValues(faultyModules);
+	}
+
+	
+	public OMElement isModuleAvailable(OMElement pElement) {
+
+		String[] params = getParameters(pElement);
+
+		GlobalManager globalManager = getGlobalManager();
+		boolean available = globalManager.isModuleAvailable(params[0]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+	
+	
+	public OMElement getGloballyEngagedModules() throws XMLStreamException {
+		
+		GlobalManager globalManager = getGlobalManager();
+		String[] glaballyEngagedModules = globalManager.getGloballyEngagedModules();
+
+		return packValues(glaballyEngagedModules);
+	}
+	
+	
+	public OMElement engageModuleGlabally(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		GlobalManager globalManager = getGlobalManager();
+		String result = globalManager.engageModuleGlobally(params[0]);
+
+		return packValue(result);
+	}
+	
+	
+	// Transports
+	
+	public OMElement getTransportIns() throws XMLStreamException {
+
+		GlobalManager globalManager = getGlobalManager();
+		String[] transports = globalManager.getTransportIns();
+
+		return packValues(transports);
+	}
+
+		
+	public OMElement isTransportInAvailable(OMElement pElement) {
+
+		String[] params = getParameters(pElement);
+
+		GlobalManager globalManager = getGlobalManager();
+		boolean available = globalManager.isTransportInAvailable(params[0]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+	
+	
+	public OMElement getTransportOuts() throws XMLStreamException {
+
+		GlobalManager globalManager = getGlobalManager();
+		String[] transports = globalManager.getTransportOuts();
+
+		return packValues(transports);
+	}
+	
+
+	public OMElement isTransportOutAvailable(OMElement pElement) {
+
+		String[] params = getParameters(pElement);
+
+		GlobalManager globalManager = getGlobalManager();
+		boolean available = globalManager.isTransportOutAvailable(params[0]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+}

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisModules.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisModules.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisModules.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisModules.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,102 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.ModuleManager;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AxisModules extends AbstractDMService {
+
+
+	public OMElement getInfo() throws XMLStreamException {
+		return packValue("This is the AxisModules module management web module.");
+	}
+
+	
+	public OMElement getModuleParameters(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ModuleManager moduleManager = getModuleManager();
+		String[] moduleParameters = moduleManager.getModuleParameters(params[0]);
+
+		return packValues(moduleParameters);
+	}
+
+
+	public OMElement isModuleParameter(OMElement element) {
+
+		String[] params = getParameters(element);
+
+		ModuleManager moduleManager = getModuleManager();
+		boolean available = moduleManager.isModuleParameter(params[0], params[1]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+
+
+	public OMElement addModuleParameter(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ModuleManager moduleManager = getModuleManager();
+		moduleManager.addModuleParameter(params[0], params[1], params[2]);
+
+		return packValue("OUT NOT AVAILABLE");
+	}
+
+
+	public OMElement editModuleParameter(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ModuleManager moduleManager = getModuleManager();
+		String result = moduleManager.editModuleParameter(params[0], params[1], params[2]);
+
+		return packValue(result);
+	}
+	
+	
+	public OMElement isEngagedGlobally(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ModuleManager moduleManager = getModuleManager();
+		String result = moduleManager.isEngagedGlobally(params[0]);
+
+		return packValue(result);
+	}
+	
+	
+	public OMElement getEngagedServices(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ModuleManager moduleManager = getModuleManager();
+		String[] engagedServices = moduleManager.getEngagedServices(params[0]);
+
+		return packValues(engagedServices);
+	}
+	
+	
+	public OMElement getEngagedOperations(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ModuleManager moduleManager = getModuleManager();
+		String[] engagedOperations = moduleManager.getEngagedOperations(params[0]);
+
+		return packValues(engagedOperations);
+	}
+
+}

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisOperationStats.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisOperationStats.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisOperationStats.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisOperationStats.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,77 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.DynamicStatsManager;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.context.ConfigurationContext;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AxisOperationStats extends AbstractDMService {
+
+	private MessageContext msgContext = null;
+	private ConfigurationContext configContext = null;
+
+	public void init(MessageContext context) {
+		msgContext = context;
+		configContext = context.getConfigurationContext();
+	}
+
+
+	public OMElement getInfo() throws XMLStreamException {
+
+		System.out.println("INFO: " + msgContext.getAxisService().getName());
+
+		return packValue("This is the AxisOperationStats service.");
+	}
+	
+
+	public void setOperationToMonitor(OMElement element) throws XMLStreamException {
+		
+		String[] params = getParameters(element);
+		
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		
+		if(!dynamicStatsManager.isServiceMonitoring(params[0])) {
+			dynamicStatsManager.setServiceToMonitor(params[0]);
+		}
+		
+		try {
+			dynamicStatsManager.getMonitoredService(params[0]).setOperationToMonitor(params[1]);
+		} catch(AxisFault af) {System.out.println("===== EXCEPTION: " + af.getMessage() + "=====");}
+	}
+	
+	
+	public OMElement getInMessages(OMElement element) throws XMLStreamException {
+		
+		String[] params = getParameters(element);
+		
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		
+		int totalRequests = 0;
+		try {
+			totalRequests = dynamicStatsManager.getMonitoredService(params[0]).getMonitoredOperation(params[1]).getInMessages();
+		} catch(AxisFault af) {System.out.println("===== EXCEPTION: " + af.getMessage() + "=====");}
+
+		return packValue(new Integer(totalRequests).toString());
+	}
+	
+	
+	public void clearInMessages(OMElement element) throws XMLStreamException {
+		
+		String[] params = getParameters(element);
+		int totalRequests = 0;
+		
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		
+		try {
+			dynamicStatsManager.getMonitoredService(params[0]).getMonitoredOperation(params[1]).clearInMessages();
+		} catch(AxisFault af) {System.out.println("===== EXCEPTION: " + af.getMessage() + "=====");}
+	}
+}

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisOperations.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisOperations.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisOperations.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisOperations.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,92 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.OperationManager;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AxisOperations extends AbstractDMService {
+
+
+	public OMElement getInfo() throws XMLStreamException {
+		return packValue("This is the AxisOperations operation management web operation.");
+	}
+
+	
+	public OMElement getOperationParameters(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		OperationManager operationManager = getOperationManager();
+		String[] operationParameters = operationManager.getOperationParameters(params[0], params[1]);
+
+		return packValues(operationParameters);
+	}
+
+
+	public OMElement isOperationParameter(OMElement element) {
+
+		String[] params = getParameters(element);
+
+		OperationManager operationManager = getOperationManager();
+		boolean available = operationManager.isOperationParameter(params[0], params[1], params[2]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+
+
+	public OMElement addOperationParameter(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		OperationManager operationManager = getOperationManager();
+		operationManager.addOperationParameter(params[0], params[1], params[2], params[3]);
+
+		return packValue("OUT NOT AVAILABLE");
+	}
+
+
+	public OMElement editOperationParameter(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		OperationManager operationManager = getOperationManager();
+		String result = operationManager.editOperationParameter(params[0], params[1], params[2], params[3]);
+
+		return packValue(result);
+	}
+	
+	
+	// Modules
+	
+	public OMElement getOperationEngagedModules(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		OperationManager operationManager = getOperationManager();
+		String[] operationEngagedModules = operationManager.getOperationEngagedModules(params[0], params[1]);
+
+		return packValues(operationEngagedModules);
+	}
+	
+	
+	public OMElement engageModuleToOperation(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		OperationManager operationManager = getOperationManager();
+		String result = operationManager.engageModuleToOperation(params[0], params[1], params[2]);
+
+		return packValue(result);
+	}
+}

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServiceGroups.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServiceGroups.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServiceGroups.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServiceGroups.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,54 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.ServiceGroupManager;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AxisServiceGroups extends AbstractDMService {
+
+
+	public OMElement getInfo() throws XMLStreamException {
+
+		System.out.println("Inside getInfo() method.");
+
+		return packValue("This is the AxisServiceGroups service group management web service.");
+	}
+	
+	
+	public OMElement getServices(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ServiceGroupManager serviceGroupManager = getServiceGroupManager();
+		String[] services = serviceGroupManager.getServices(params[0]);
+
+		return packValues(services);
+	}
+	
+	
+	public OMElement getServiceGroupEngagedModules(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ServiceGroupManager serviceGroupManager = getServiceGroupManager();
+		String[] engagedModules = serviceGroupManager.getServiceGroupEngagedModules(params[0]);
+
+		return packValues(engagedModules);
+	}
+	
+	
+	public OMElement engageModuleToServiceGroup(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ServiceGroupManager serviceGroupManager = getServiceGroupManager();
+		String info = serviceGroupManager.engageModuleToServiceGroup(params[0], params[1]);
+
+		return packValue(info);
+	}
+}

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServiceStats.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServiceStats.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServiceStats.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServiceStats.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,69 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.DynamicStatsManager;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.context.ConfigurationContext;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AxisServiceStats extends AbstractDMService {
+
+	private MessageContext msgContext = null;
+	private ConfigurationContext configContext = null;
+
+	public void init(MessageContext context) {
+		msgContext = context;
+		configContext = context.getConfigurationContext();
+	}
+
+
+	public OMElement getInfo() throws XMLStreamException {
+
+		System.out.println("INFO: " + msgContext.getAxisService().getName());
+
+		return packValue("This is the AxisServiceStats service.");
+	}
+	
+	
+	public void setServiceToMonitor(OMElement element) throws XMLStreamException {
+		
+		String[] params = getParameters(element);
+		
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		dynamicStatsManager.setServiceToMonitor(params[0]);
+	}
+		
+	
+	public OMElement getInMessages(OMElement element) throws XMLStreamException {
+		
+		String[] params = getParameters(element);
+		
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		
+		int totalRequests = 0;
+		try {
+			totalRequests = dynamicStatsManager.getMonitoredService(params[0]).getInMessages();
+		} catch(AxisFault af) {System.out.println("===== EXCEPTION: " + af.getMessage() + "=====");}
+
+		return packValue(new Integer(totalRequests).toString());
+	}
+	
+	
+	public void clearInMessages(OMElement element) throws XMLStreamException {
+		
+		String[] params = getParameters(element);
+		
+		DynamicStatsManager dynamicStatsManager = (DynamicStatsManager)configContext.getProperty("dynamic_stats");
+		
+		try {
+			dynamicStatsManager.getMonitoredService(params[0]).clearInMessages();
+		} catch(AxisFault af) {System.out.println("===== EXCEPTION: " + af.getMessage() + "=====");}
+	}
+}

Added: webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServices.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServices.java?rev=384160&view=auto
==============================================================================
--- webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServices.java (added)
+++ webservices/axis2/trunk/archive/java/scratch/Axis_Management_module/management/src/org/apache/axis2/management/interfaces/ws/AxisServices.java Wed Mar  8 01:01:46 2006
@@ -0,0 +1,126 @@
+package org.apache.axis2.management.interfaces.ws;
+
+import org.apache.axis2.management.core.managers.ServiceManager;
+
+import org.apache.ws.commons.om.OMAbstractFactory;
+import org.apache.ws.commons.om.OMElement;
+import org.apache.ws.commons.om.OMFactory;
+import org.apache.ws.commons.om.OMNamespace;
+
+import javax.xml.stream.XMLStreamException;
+
+public class AxisServices extends AbstractDMService {
+
+
+	public OMElement getInfo() throws XMLStreamException {
+
+		System.out.println("Inside getInfo() method.");
+
+		return packValue("This is the AxisServices service management web service.");
+	}
+	
+	
+	public OMElement getServiceParameters(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ServiceManager serviceManager = getServiceManager();
+		String[] serviceParameters = serviceManager.getServiceParameters(params[0]);
+
+		return packValues(serviceParameters);
+	}
+
+
+	public OMElement isServiceParameter(OMElement element) {
+
+		String[] params = getParameters(element);
+
+		ServiceManager serviceManager = getServiceManager();
+		boolean available = serviceManager.isServiceParameter(params[0], params[1]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+
+
+	public OMElement addServiceParameter(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ServiceManager serviceManager = getServiceManager();
+		serviceManager.addServiceParameter(params[0], params[1], params[2]);
+
+		return packValue("OUT NOT AVAILABLE");
+	}
+
+
+	public OMElement editServiceParameter(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ServiceManager serviceManager = getServiceManager();
+		String result = serviceManager.editServiceParameter(params[0], params[1], params[2]);
+
+		return packValue(result);
+	}
+	
+	
+	// Modules
+	
+	public OMElement getServiceEngagedModules(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ServiceManager serviceManager = getServiceManager();
+		String[] serviceEngagedModules = serviceManager.getServiceEngagedModules(params[0]);
+
+		return packValues(serviceEngagedModules);
+	}
+	
+	
+	public OMElement engageModuleToService(OMElement element) throws XMLStreamException {
+
+		String[] params = getParameters(element);
+		
+		ServiceManager serviceManager = getServiceManager();
+		String result = serviceManager.engageModuleToService(params[0], params[1]);
+
+		return packValue(result);
+	}
+	
+	
+	// Operations
+	
+	public OMElement getOperations(OMElement element) throws XMLStreamException {
+		
+		String[] params = getParameters(element);
+
+		ServiceManager serviceManager = getServiceManager();
+		String[] operations = serviceManager.getOperations(params[0]);
+
+		return packValues(operations);
+	}
+
+	
+	public OMElement isOperationAvailable(OMElement pElement) {
+
+		String[] params = getParameters(pElement);
+
+		ServiceManager serviceManager = getServiceManager();
+		boolean available = serviceManager.isOperationAvailable(params[0], params[1]);
+
+		OMElement result;
+		if(available)
+			result = packValue("TRUE");
+		else
+			result = packValue("FALSE");
+
+		return result;
+	}
+
+}