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/01/24 11:31:16 UTC
svn commit: r371883 - in /webservices/axis2/trunk/java/modules/core:
src/org/apache/axis2/deployment/ src/org/apache/axis2/description/
src/org/apache/axis2/engine/ src/org/apache/axis2/util/
test/org/apache/axis2/deployment/
Author: deepal
Date: Tue Jan 24 02:30:49 2006
New Revision: 371883
URL: http://svn.apache.org/viewcvs?rev=371883&view=rev
Log:
-added module notification when they engage to an AxisDescription
- improved AxisObserver interface to notify them when adding a module to system , so if some administrator want to override some module data he can do that as well.
Modified:
webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java
webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java
webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java
webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java
webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisEvent.java
webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisObserver.java
webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java
webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/AxisObserverImpl.java
Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java?rev=371883&r1=371882&r2=371883&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java Tue Jan 24 02:30:49 2006
@@ -480,7 +480,6 @@
private void engageModules() throws AxisFault {
for (Iterator iterator = modulelist.iterator(); iterator.hasNext();) {
QName name = (QName) iterator.next();
-
axisConfig.engageModule(name);
}
}
Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java?rev=371883&r1=371882&r2=371883&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java Tue Jan 24 02:30:49 2006
@@ -23,6 +23,7 @@
import org.apache.axis2.Constants;
import org.apache.axis2.engine.AxisConfiguration;
import org.apache.axis2.engine.MessageReceiver;
+import org.apache.axis2.modules.Module;
import org.apache.axis2.util.PolicyUtil;
import org.apache.axis2.wsdl.writer.WOMWriter;
import org.apache.axis2.wsdl.writer.WOMWriterFactory;
@@ -177,6 +178,11 @@
}
try {
+ Module moduleImpl = module.getModule();
+ if (moduleImpl != null) {
+ // notyfying module for service engagement
+ moduleImpl.engageNotify(axisOperation);
+ }
axisOperation.engageModule(module, axisConfig);
} catch (AxisFault axisFault) {
log.info("Trying to engage a module which is already engege:"
@@ -258,7 +264,11 @@
while (operations.hasNext()) {
AxisOperation axisOperation = (AxisOperation) operations.next();
-
+ Module moduleImpl = moduleref.getModule();
+ if (moduleImpl != null) {
+ // notyfying module for service engagement
+ moduleImpl.engageNotify(axisOperation);
+ }
axisOperation.engageModule(moduleref, axisConfig);
}
Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java?rev=371883&r1=371882&r2=371883&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java Tue Jan 24 02:30:49 2006
@@ -20,6 +20,7 @@
import org.apache.axis2.AxisFault;
import org.apache.axis2.engine.AxisConfiguration;
import org.apache.axis2.engine.AxisEvent;
+import org.apache.axis2.modules.Module;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -40,7 +41,7 @@
// to store modeule configuration info
private HashMap moduleConfigmap;
-
+
// class loader
private ClassLoader serviceGroupClassLoader;
@@ -51,7 +52,6 @@
* Field services
*/
// private HashMap services;
-
public AxisServiceGroup() {
// services = new HashMap();
moduleConfigmap = new HashMap();
@@ -93,6 +93,11 @@
AxisModule axisModule = axisConfig.getModule(moduleName);
if (axisModule != null) {
+ Module moduleImpl = axisModule.getModule();
+ if (moduleImpl != null) {
+ // notyfying module for service engagement
+ moduleImpl.engageNotify(service);
+ }
service.engageModule(axisModule, axisConfig);
} else {
throw new AxisFault("Trying to engage a module which is not " + "available : "
@@ -129,6 +134,11 @@
// engaging each service
AxisService axisService = (AxisService) srevice.next();
try {
+ Module moduleImpl = module.getModule();
+ if (moduleImpl != null) {
+ // notyfying module for service engagement
+ moduleImpl.engageNotify(axisService);
+ }
axisService.engageModule(module, (AxisConfiguration) getParent());
} catch (AxisFault axisFault) {
log.info(axisFault.getMessage());
@@ -169,7 +179,7 @@
public AxisService getService(String name) throws AxisFault {
// return (AxisService) services.get(name);
- return (AxisService) getChild(name);
+ return (AxisService) getChild(name);
}
public ClassLoader getServiceGroupClassLoader() {
@@ -182,11 +192,11 @@
public Iterator getServices() {
// return services.values().iterator();
- return getChildren();
+ return getChildren();
}
public void setAxisDescription(AxisConfiguration axisDescription) {
- setParent(axisDescription);
+ setParent(axisDescription);
}
public void setServiceGroupClassLoader(ClassLoader serviceGroupClassLoader) {
@@ -196,8 +206,8 @@
public void setServiceGroupName(String serviceGroupName) {
this.serviceGroupName = serviceGroupName;
}
-
+
public Object getKey() {
- return getServiceGroupName();
+ return getServiceGroupName();
}
}
Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java?rev=371883&r1=371882&r2=371883&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java Tue Jan 24 02:30:49 2006
@@ -19,6 +19,7 @@
import org.apache.axis2.AxisFault;
import org.apache.axis2.Constants;
+import org.apache.axis2.modules.Module;
import org.apache.axis2.deployment.DeploymentConstants;
import org.apache.axis2.deployment.DeploymentEngine;
import org.apache.axis2.deployment.repository.util.ArchiveReader;
@@ -136,6 +137,7 @@
*/
public void addModule(AxisModule module) throws AxisFault {
module.setParent(this);
+ notifyObservers(AxisEvent.MODULE_DEPLOY,module);
allModules.put(module.getName(), module);
}
@@ -367,12 +369,22 @@
}
public void notifyObservers(int event_type, AxisService service) {
- AxisEvent event = new AxisEvent(service, event_type);
+ AxisEvent event = new AxisEvent(event_type);
for (int i = 0; i < observersList.size(); i++) {
AxisObserver axisObserver = (AxisObserver) observersList.get(i);
- axisObserver.update(event);
+ axisObserver.serviceUpdate(event, service);
+ }
+ }
+
+ public void notifyObservers(int event_type, AxisModule moule) {
+ AxisEvent event = new AxisEvent(event_type);
+
+ for (int i = 0; i < observersList.size(); i++) {
+ AxisObserver axisObserver = (AxisObserver) observersList.get(i);
+
+ axisObserver.moduleUpdate(event, moule);
}
}
Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisEvent.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisEvent.java?rev=371883&r1=371882&r2=371883&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisEvent.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisEvent.java Tue Jan 24 02:30:49 2006
@@ -17,23 +17,21 @@
package org.apache.axis2.engine;
-import org.apache.axis2.description.AxisService;
-
public class AxisEvent {
/**
* An Axis event is sent to registered listeners whenever anything significant
* happens to <code>AxisConfiguration</code>.
*/
- public static final int SERVICE_DEPLOY = 1;
- public static final int SERVICE_REMOVE = 0;
- public static final int SERVICE_STOP=2;
- public static final int SERVICE_START=3;
+ public static final int SERVICE_DEPLOY = 1;
+ public static final int SERVICE_REMOVE = 0;
+ public static final int SERVICE_STOP = 2;
+ public static final int SERVICE_START = 3;
+ public static final int MODULE_DEPLOY = 4;
+ public static final int MODULE_REMOVE = 5;
private int EVENT_TYPE;
- private AxisService service;
- public AxisEvent(AxisService service, int EVENT_TYPE) {
- this.service = service;
+ public AxisEvent(int EVENT_TYPE) {
this.EVENT_TYPE = EVENT_TYPE;
}
@@ -41,7 +39,4 @@
return EVENT_TYPE;
}
- public AxisService getService() {
- return service;
- }
}
Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisObserver.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisObserver.java?rev=371883&r1=371882&r2=371883&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisObserver.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisObserver.java Tue Jan 24 02:30:49 2006
@@ -17,6 +17,8 @@
package org.apache.axis2.engine;
+import org.apache.axis2.description.AxisModule;
+import org.apache.axis2.description.AxisService;
import org.apache.axis2.description.ParameterInclude;
public interface AxisObserver extends ParameterInclude {
@@ -24,5 +26,7 @@
// The initilization code will go here
void init();
- void update(AxisEvent event);
+ void serviceUpdate(AxisEvent event, AxisService service);
+
+ void moduleUpdate(AxisEvent event, AxisModule module);
}
Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java?rev=371883&r1=371882&r2=371883&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java Tue Jan 24 02:30:49 2006
@@ -221,7 +221,7 @@
* moduleName-00.0000 as an exmple addressing-01.0001.aar
*/
- private static String getModuleName(String moduleName) {
+ public static String getModuleName(String moduleName) {
char version_seperator = '-';
int version_index = moduleName.indexOf(version_seperator);
if (version_index > 0) {
@@ -231,7 +231,7 @@
}
}
- private static String getModuleVersion(String moduleName) {
+ public static String getModuleVersion(String moduleName) {
char version_seperator = '-';
int version_index = moduleName.indexOf(version_seperator);
if (version_index > 0) {
Modified: webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/AxisObserverImpl.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/AxisObserverImpl.java?rev=371883&r1=371882&r2=371883&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/AxisObserverImpl.java (original)
+++ webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/AxisObserverImpl.java Tue Jan 24 02:30:49 2006
@@ -17,6 +17,8 @@
package org.apache.axis2.deployment;
import org.apache.axis2.AxisFault;
+import org.apache.axis2.description.AxisModule;
+import org.apache.axis2.description.AxisService;
import org.apache.axis2.description.Parameter;
import org.apache.axis2.description.ParameterIncludeImpl;
import org.apache.axis2.engine.AxisEvent;
@@ -25,7 +27,7 @@
import java.util.ArrayList;
-public class AxisObserverImpl implements AxisObserver{
+public class AxisObserverImpl implements AxisObserver {
ParameterIncludeImpl parameterimpl;
@@ -34,10 +36,13 @@
parameterimpl = new ParameterIncludeImpl();
}
- public void update(AxisEvent event) {
+ public void serviceUpdate(AxisEvent event, AxisService service) {
}
- public void addParameter(Parameter param) throws AxisFault{
+ public void moduleUpdate(AxisEvent event, AxisModule module) {
+ }
+
+ public void addParameter(Parameter param) throws AxisFault {
}
public Parameter getParameter(String name) {
@@ -45,7 +50,7 @@
}
public ArrayList getParameters() {
- return null;
+ return null;
}
//to check whether the parameter is locked at any levle