[wsas-java-dev] svn commit r4173 - trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service

svn at wso2.org svn at wso2.org
Thu Jun 21 00:04:54 PDT 2007


Author: azeez
Date: Thu Jun 21 00:04:28 2007
New Revision: 4173

Modified:
   trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServiceAdmin.java
Log:
Code improvements



Modified: trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServiceAdmin.java
==============================================================================
--- trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServiceAdmin.java	(original)
+++ trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServiceAdmin.java	Thu Jun 21 00:04:28 2007
@@ -15,29 +15,6 @@
  */
 package org.wso2.wsas.admin.service;
 
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
 import org.apache.axiom.om.OMAbstractFactory;
 import org.apache.axiom.om.OMAttribute;
 import org.apache.axiom.om.OMElement;
@@ -88,6 +65,28 @@
 import org.wso2.wsas.util.ParameterUtil;
 import org.wso2.wsas.util.PolicyUtil;
 
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
 /**
  * Admin service to manage services
  */
@@ -315,56 +314,52 @@
     public ServiceMetaData getServiceData(String serviceName) throws AxisFault {
         AxisService service = getAxisConfig().getServiceForActivation(serviceName);
         Parameter serviceTypeParam = service.getParameter(ServerConstants.SERVICE_TYPE);
-        String serviceType = null;
-        if (serviceTypeParam != null){
-        	serviceType = (String)serviceTypeParam.getValue();
+        String serviceType;
+        if (serviceTypeParam != null) {
+            serviceType = (String) serviceTypeParam.getValue();
         } else {
-        	serviceType = "Normal";
+            serviceType = "Normal";
         }
-        if (service != null) {
-            List ops = new ArrayList();
-            for (Iterator opIter = service.getOperations(); opIter.hasNext();) {
-                AxisOperation axisOperation = (AxisOperation) opIter.next();
+        List ops = new ArrayList();
+        for (Iterator opIter = service.getOperations(); opIter.hasNext();) {
+            AxisOperation axisOperation = (AxisOperation) opIter.next();
 
-                if (axisOperation.getName() != null) {
-                    ops.add(axisOperation.getName().getLocalPart());
-                }
+            if (axisOperation.getName() != null) {
+                ops.add(axisOperation.getName().getLocalPart());
             }
+        }
 
-            ServiceMetaData smd = new ServiceMetaData();
-
-            try {
-                StatisticsClient statClient = new StatisticsClient();
-                smd.setServiceRequestCount(statClient.getServiceRequestCount(serviceName));
-                smd.setServiceResponseCount(statClient.getServiceResponseCount(serviceName));
-                smd.setServiceFaultCount(statClient.getServiceFaultCount(serviceName));
-                smd.setMaxResponseTime(statClient.getMaxServiceResponseTime(serviceName));
-                smd.setMinResponseTime(statClient.getMinServiceResponseTime(serviceName));
-                smd.setAvgResponseTime(statClient.getAvgServiceResponseTime(serviceName));
-            } catch (Exception e) {
-                throw AxisFault.makeFault(e);
-            }
+        ServiceMetaData smd = new ServiceMetaData();
 
-            smd.setOperations((String[]) ops.toArray(new String[ops.size()]));
-            smd.setName(serviceName);
-            smd.setService_id(serviceName);
-            smd.setService_version("");
-            smd.setActive(service.isActive());
-            smd.setEprs(getServiceEPRs(service));
-            smd.setServiceType(serviceType);
-            smd.setFoundWebResources(
-                    ((AxisServiceGroup) service.getParent()).isFoundWebResources());
+        try {
+            StatisticsClient statClient = new StatisticsClient();
+            smd.setServiceRequestCount(statClient.getServiceRequestCount(serviceName));
+            smd.setServiceResponseCount(statClient.getServiceResponseCount(serviceName));
+            smd.setServiceFaultCount(statClient.getServiceFaultCount(serviceName));
+            smd.setMaxResponseTime(statClient.getMaxServiceResponseTime(serviceName));
+            smd.setMinResponseTime(statClient.getMinServiceResponseTime(serviceName));
+            smd.setAvgResponseTime(statClient.getAvgServiceResponseTime(serviceName));
+        } catch (Exception e) {
+            throw AxisFault.makeFault(e);
+        }
 
-            if (service.getServiceDescription() != null) {
-                smd.setDescription(service.getServiceDescription());
-            } else {
-                smd.setDescription("No service description found");
-            }
+        smd.setOperations((String[]) ops.toArray(new String[ops.size()]));
+        smd.setName(serviceName);
+        smd.setService_id(serviceName);
+        smd.setService_version("");
+        smd.setActive(service.isActive());
+        smd.setEprs(getServiceEPRs(service));
+        smd.setServiceType(serviceType);
+        smd.setFoundWebResources(
+                ((AxisServiceGroup) service.getParent()).isFoundWebResources());
 
-            return smd;
+        if (service.getDocumentation() != null) {
+            smd.setDescription(service.getDocumentation());
         } else {
-            throw new AxisFault("invalid service name");
+            smd.setDescription("No service description found");
         }
+
+        return smd;
     }
 
     /**
@@ -384,11 +379,11 @@
             for (Iterator serviceIter = asg.getServices(); serviceIter.hasNext();) {
                 AxisService axisService = (AxisService) serviceIter.next();
                 Parameter serviceTypeParam = axisService.getParameter(ServerConstants.SERVICE_TYPE);
-                String serviceType = null;
-                if (serviceTypeParam != null){
-                	serviceType = (String)serviceTypeParam.getValue();
+                String serviceType;
+                if (serviceTypeParam != null) {
+                    serviceType = (String) serviceTypeParam.getValue();
                 } else {
-                	serviceType = "Normal";
+                    serviceType = "Normal";
                 }
                 List ops = new ArrayList();
                 for (Iterator opIter = axisService.getOperations(); opIter.hasNext();) {
@@ -416,7 +411,7 @@
                 smd.setService_version("");
                 smd.setActive(axisService.isActive());
                 smd.setServiceType(serviceType);
-                smd.setDescription(axisService.getServiceDescription());
+                smd.setDescription(axisService.getDocumentation());
                 services.add(smd);
             }
         }
@@ -543,40 +538,40 @@
             }
         }
     }
-    
+
     public void removeServiceSpecificParameter(String serviceId,
-            String serviceVersion,
-            OMElement paramterElement) throws AxisFault {
+                                               String serviceVersion,
+                                               OMElement paramterElement) throws AxisFault {
 
-    	AxisService axisService = getAxisConfig().getService(serviceId);
+        AxisService axisService = getAxisConfig().getService(serviceId);
 
-    	if (axisService == null) {
-    		throw new AxisFault("Invalid service name '" + serviceId + "'");
-    	}
-
-    	// un-Persist the parameter
-    	ServiceDO serviceDO = pm.getService(serviceId,
-                    ServiceIdentifierDO.EMPTY_SERVICE_VERSION);
-    	Parameter parameter = ParameterUtil.createParameter(paramterElement);
-    	Parameter p = axisService.getParameter(parameter.getName());
-    	ServiceParameterDO paramDO = pm.getServiceParameter(serviceDO,
-                                    parameter.getName());
-    	if (p != null && paramDO != null) {
-
-    		// Setting a new value for a parameter declared in AxisService
-    		if (!p.isLocked()) {
-    			axisService.removeParameter(parameter);
-    			pm.deleteEntity(paramDO);
-    		}
-    	} else {
-
-    		if (p == null || !p.isLocked()) {
-    			axisService.removeParameter(parameter);
-
-    		
-    		}
-    	}
-}
+        if (axisService == null) {
+            throw new AxisFault("Invalid service name '" + serviceId + "'");
+        }
+
+        // un-Persist the parameter
+        ServiceDO serviceDO = pm.getService(serviceId,
+                                            ServiceIdentifierDO.EMPTY_SERVICE_VERSION);
+        Parameter parameter = ParameterUtil.createParameter(paramterElement);
+        Parameter p = axisService.getParameter(parameter.getName());
+        ServiceParameterDO paramDO = pm.getServiceParameter(serviceDO,
+                                                            parameter.getName());
+        if (p != null && paramDO != null) {
+
+            // Setting a new value for a parameter declared in AxisService
+            if (!p.isLocked()) {
+                axisService.removeParameter(parameter);
+                pm.deleteEntity(paramDO);
+            }
+        } else {
+
+            if (p == null || !p.isLocked()) {
+                axisService.removeParameter(parameter);
+
+
+            }
+        }
+    }
 
     public void setServiceParameter2(String serviceName,
                                      Parameter parameter) throws AxisFault {
@@ -1091,7 +1086,7 @@
                                                        String springContextLocation) {
         OMFactory factory = OMAbstractFactory.getOMFactory();
         OMNamespace emptyNS = factory.createOMNamespace("", "");
-        OMElement serviceGroupEle = factory.createOMElement("serviceGroup", "","");
+        OMElement serviceGroupEle = factory.createOMElement("serviceGroup", "", "");
 
         for (int i = 0; i < springBeans.length; i++) {
             String serviceBeanName = springBeans[i];
@@ -1470,151 +1465,154 @@
             log.error(msg, e);
             throw new AxisFault(msg, e);
         }
-
-
     }
 
-    
-    
     public void createAndDeployEJBService(String archiveId,
-    		String[] serviceClasses,String providerURL,
-    		String jndiContextClass,
-    		String userName,
-    		String password,
-    		String appServerType,
-    		String beanJNDIName,
-    		String homeInterface,
-    		String remoteInterface,
-    		String serviceGroupId,
-    		String addNewServiceGroup) throws AxisFault {
-
-    	//save ejb configuration
-    	EJBProviderAdmin ejbProviderAdmin = new EJBProviderAdmin();
-    	ejbProviderAdmin.addEJBConfiguration(providerURL
-    			, jndiContextClass
-    			, userName
-    			, password
-    			, beanJNDIName
-    			, homeInterface
-    			, remoteInterface
-    			, appServerType
-    			, serviceGroupId
-    			, addNewServiceGroup);
-    	
-    	String filePathFromArchiveId = getFilePathFromArchiveId(archiveId);
-
-    	if (filePathFromArchiveId == null) {
-    		String msg = "A non-existent file was requested";
-    		log.warn(msg);
-    		throw new AxisFault(msg);
-    	}
-
-    	int endIndex = filePathFromArchiveId.lastIndexOf(File.separator);
-    	String filePath = filePathFromArchiveId.substring(0, endIndex);
-    	String archiveFileName = filePathFromArchiveId.substring(endIndex);
-    	archiveFileName = archiveFileName.substring(0,
-    			archiveFileName.lastIndexOf("."));
+                                          String[] serviceClasses,
+                                          String providerURL,
+                                          String jndiContextClass,
+                                          String userName,
+                                          String password,
+                                          String appServerType,
+                                          String beanJNDIName,
+                                          String homeInterface,
+                                          String remoteInterface,
+                                          String serviceGroupId,
+                                          String addNewServiceGroup) throws AxisFault {
+
+        //save ejb configuration
+        EJBProviderAdmin ejbProviderAdmin = new EJBProviderAdmin();
+        ejbProviderAdmin.addEJBConfiguration(providerURL
+                , jndiContextClass
+                , userName
+                , password
+                , beanJNDIName
+                , homeInterface
+                , remoteInterface
+                , appServerType
+                , serviceGroupId
+                , addNewServiceGroup);
 
-    	ArchiveManipulator archiveManipulator = new ArchiveManipulator();
+        String filePathFromArchiveId = getFilePathFromArchiveId(archiveId);
+
+        if (filePathFromArchiveId == null) {
+            String msg = "A non-existent file was requested";
+            log.warn(msg);
+            throw new AxisFault(msg);
+        }
+
+        int endIndex = filePathFromArchiveId.lastIndexOf(File.separator);
+        String filePath = filePathFromArchiveId.substring(0, endIndex);
+        String archiveFileName = filePathFromArchiveId.substring(endIndex);
+        archiveFileName = archiveFileName.substring(0,
+                                                    archiveFileName.lastIndexOf("."));
+
+        ArchiveManipulator archiveManipulator = new ArchiveManipulator();
 
 //  	----------------- Unzip the file ------------------------------------
-    	String unzippeDir = filePath + File.separator + "temp";
-    	File unzipped = new File(unzippeDir);
-    	unzipped.mkdirs();
-
-    	try {
-    		archiveManipulator.extract(filePathFromArchiveId, unzippeDir);
-    	} catch (IOException e) {
-    		e.printStackTrace();
-    		throw new AxisFault("Cannot extract archive", e);
-    	}
+        String unzippeDir = filePath + File.separator + "temp";
+        File unzipped = new File(unzippeDir);
+        unzipped.mkdirs();
+
+        try {
+            archiveManipulator.extract(filePathFromArchiveId, unzippeDir);
+        } catch (IOException e) {
+            e.printStackTrace();
+            throw new AxisFault("Cannot extract archive", e);
+        }
 
 //  	---- Generate the services.xml and place it in META-INF -----
-    	File file = new File(unzippeDir + File.separator + "META-INF" +
-    			File.separator + "services.xml");
-    	file.mkdirs();
-
-    	try {
-    		File absoluteFile = file.getAbsoluteFile();
-
-    		if (absoluteFile.exists()) {
-    			absoluteFile.delete();
-    		}
-
-    		absoluteFile.createNewFile();
-
-    		OutputStream os = new FileOutputStream(file);
-    		OMElement servicesXML = createServicesXMLForEJBService(serviceClasses,providerURL,jndiContextClass,userName,password,beanJNDIName,homeInterface,remoteInterface,serviceGroupId);
-    		servicesXML.build();
-    		servicesXML.serialize(os);
-    	} catch (Exception e) {
-    		String msg = "Cannot write services XML";
-    		log.error(msg, e);
-    		throw new AxisFault(msg, e);
-    	}
+        File file = new File(unzippeDir + File.separator + "META-INF" +
+                             File.separator + "services.xml");
+        file.mkdirs();
+
+        try {
+            File absoluteFile = file.getAbsoluteFile();
+
+            if (absoluteFile.exists()) {
+                absoluteFile.delete();
+            }
+
+            absoluteFile.createNewFile();
+
+            OutputStream os = new FileOutputStream(file);
+            OMElement servicesXML = createServicesXMLForEJBService(serviceClasses,
+                                                                   providerURL,
+                                                                   jndiContextClass,
+                                                                   userName,
+                                                                   password,
+                                                                   beanJNDIName,
+                                                                   homeInterface,
+                                                                   remoteInterface);
+            servicesXML.build();
+            servicesXML.serialize(os);
+        } catch (Exception e) {
+            String msg = "Cannot write services XML";
+            log.error(msg, e);
+            throw new AxisFault(msg, e);
+        }
 
 //  	----------------- Create the AAR ------------------------------------
 //  	These are the files to include in the ZIP file
-    	String outAARFilename = filePath + File.separator + archiveFileName +
-    	".aar";
+        String outAARFilename = filePath + File.separator + archiveFileName +
+                                ".aar";
 
-    	try {
-    		archiveManipulator.archiveDir(outAARFilename, unzipped.getPath());
-    	} catch (IOException e) {
-    		String msg = "Cannot create new AAR archive";
-    		log.error(msg, e);
-    		throw new AxisFault(msg, e);
-    	}
+        try {
+            archiveManipulator.archiveDir(outAARFilename, unzipped.getPath());
+        } catch (IOException e) {
+            String msg = "Cannot create new AAR archive";
+            log.error(msg, e);
+            throw new AxisFault(msg, e);
+        }
 
 //  	------------- Copy the AAR to the respository/services directory --------
-    	String repo = MessageContext.getCurrentMessageContext().getConfigurationContext()
-    	.getAxisConfiguration().getRepository()
-    	.getPath() + File.separator + "services";
-
-    	try {
-    		new FileManipulator().copyFile(new File(outAARFilename),
-    				new File(repo + File.separator + archiveFileName +
-    						".aar"));
-    	} catch (IOException e) {
-    		String msg = "Cannot copy AAR file to Repo";
-    		log.error(msg, e);
-    		throw new AxisFault(msg, e);
-    	}
+        String repo = MessageContext.getCurrentMessageContext().getConfigurationContext()
+                .getAxisConfiguration().getRepository()
+                .getPath() + File.separator + "services";
+
+        try {
+            new FileManipulator().copyFile(new File(outAARFilename),
+                                           new File(repo + File.separator + archiveFileName +
+                                                    ".aar"));
+        } catch (IOException e) {
+            String msg = "Cannot copy AAR file to Repo";
+            log.error(msg, e);
+            throw new AxisFault(msg, e);
+        }
     }
-    
-    
+
+
     /*
 <serviceGroup>
-        <service name="TimeService">
-                <description>Time!! web service</description>
-				<parameter name="ServiceClass" locked="false">org.apache.axis2.samples.ejb.session.interfaces.TimeServiceRemote</parameter>
-                <messageReceivers>
-                        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.ejb.EJBInOnlyMessageReceiver"/>
-                        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.ejb.EJBMessageReceiver"/>
-                </messageReceivers>
-                <parameter name="remoteInterfaceName">org.apache.axis2.samples.ejb.session.interfaces.TimeServiceRemote</parameter>
-                <parameter name="homeInterfaceName">org.apache.axis2.samples.ejb.session.interfaces.TimeServiceRemoteHome</parameter>
-                <parameter name="beanJndiName">org.apache.axis2.samples.ejb.session.interfaces.TimeServiceLocalHome</parameter>
-				<!--for jboss -->
-                <parameter name="providerUrl">jnp://localhost:1099</parameter>
-                <parameter name="jndiContextClass">org.jnp.interfaces.NamingContextFactory</parameter>
-
-				<!--for geronimo 		
-                <parameter name="providerUrl">localhost:4201</parameter>
-                <parameter name="jndiContextClass">org.openejb.client.JNDIContext</parameter>
-				-->
-        </service>
-</serviceGroup>      
-     */
-    private OMElement createServicesXMLForEJBService(String[] serviceClasses,String providerURL,
-    		String jndiContextClass,
-    		String userName,
-    		String password,
-    		String beanJNDIName,
-    		String homeInterface,
-    		String remoteInterface,
-    		String serviceGroupId) {
-    	
+       <service name="TimeService">
+               <description>Time!! web service</description>
+               <parameter name="ServiceClass" locked="false">org.apache.axis2.samples.ejb.session.interfaces.TimeServiceRemote</parameter>
+               <messageReceivers>
+                       <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.ejb.EJBInOnlyMessageReceiver"/>
+                       <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.ejb.EJBMessageReceiver"/>
+               </messageReceivers>
+               <parameter name="remoteInterfaceName">org.apache.axis2.samples.ejb.session.interfaces.TimeServiceRemote</parameter>
+               <parameter name="homeInterfaceName">org.apache.axis2.samples.ejb.session.interfaces.TimeServiceRemoteHome</parameter>
+               <parameter name="beanJndiName">org.apache.axis2.samples.ejb.session.interfaces.TimeServiceLocalHome</parameter>
+               <!--for jboss -->
+               <parameter name="providerUrl">jnp://localhost:1099</parameter>
+               <parameter name="jndiContextClass">org.jnp.interfaces.NamingContextFactory</parameter>
+
+               <!--for geronimo
+               <parameter name="providerUrl">localhost:4201</parameter>
+               <parameter name="jndiContextClass">org.openejb.client.JNDIContext</parameter>
+               -->
+       </service>
+</serviceGroup>
+    */
+    private OMElement createServicesXMLForEJBService(String[] serviceClasses, String providerURL,
+                                                     String jndiContextClass,
+                                                     String userName,
+                                                     String password,
+                                                     String beanJNDIName,
+                                                     String homeInterface,
+                                                     String remoteInterface) {
+
         OMFactory factory = OMAbstractFactory.getOMFactory();
         OMNamespace emptyNS = factory.createOMNamespace("", "");
         OMElement serviceGroupEle = factory.createOMElement("serviceGroup", "", "");
@@ -1657,7 +1655,7 @@
             OMElement parameterEle1 = factory.createOMElement("parameter", "", "");
             parameterEle1.addAttribute("name", "remoteInterfaceName", emptyNS);
             parameterEle1.setText(remoteInterface);
-            
+
             OMElement parameterEle2 = factory.createOMElement("parameter", "", "");
             parameterEle2.addAttribute("name", "homeInterfaceName", emptyNS);
             parameterEle2.setText(homeInterface);
@@ -1673,7 +1671,7 @@
             OMElement parameterEle5 = factory.createOMElement("parameter", "", "");
             parameterEle5.addAttribute("name", "jndiContextClass", emptyNS);
             parameterEle5.setText(jndiContextClass);
-            
+
             OMElement parameterEle6 = factory.createOMElement("parameter", "", "");
             parameterEle6.addAttribute("name", "userName", emptyNS);
             parameterEle6.setText(userName);
@@ -1681,11 +1679,11 @@
             OMElement parameterEle7 = factory.createOMElement("parameter", "", "");
             parameterEle7.addAttribute("name", "password", emptyNS);
             parameterEle7.setText(password);
-            
+
             OMElement parameterEle8 = factory.createOMElement("parameter", "", "");
             parameterEle8.addAttribute("name", "ServiceClass", emptyNS);
             parameterEle8.setText(serviceClass);
-            
+
 
             serviceEle.addChild(schemaEle);
             serviceEle.addChild(msgReceiversEle);
@@ -1697,12 +1695,12 @@
             serviceEle.addChild(parameterEle6);
             serviceEle.addChild(parameterEle7);
             serviceEle.addChild(parameterEle8);
-            
+
             serviceGroupEle.addChild(serviceEle);
         }
 
         return serviceGroupEle;
     }
-    
-    
+
+
 }




More information about the Wsas-java-dev mailing list