You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by da...@apache.org on 2006/04/23 04:55:52 UTC
svn commit: r396206 [2/2] - in /geronimo/branches/1.1:
applications/console-core/src/java/org/apache/geronimo/console/util/
applications/console-standard/src/java/org/apache/geronimo/console/jmsmanager/wizard/
applications/console-standard/src/java/org...
Modified: geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/JCAResourceImpl.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/JCAResourceImpl.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/JCAResourceImpl.java (original)
+++ geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/JCAResourceImpl.java Sat Apr 22 19:55:45 2006
@@ -19,10 +19,17 @@
import org.apache.geronimo.management.geronimo.JCAResource;
import org.apache.geronimo.management.geronimo.JCAResourceAdapter;
import org.apache.geronimo.management.geronimo.JCAConnectionFactory;
+import org.apache.geronimo.management.geronimo.JCAManagedConnectionFactory;
+import org.apache.geronimo.management.geronimo.JCAAdminObject;
+import org.apache.geronimo.j2ee.management.impl.Util;
import java.util.Collection;
import java.util.ArrayList;
import java.util.Iterator;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.Arrays;
+import java.util.List;
/**
* @version $Rev$ $Date$
@@ -32,20 +39,17 @@
private final Collection connectionFactories;
private final Collection resourceAdapters;
+ private final Collection adminObjects;
- public JCAResourceImpl(String objectName, Collection connectionFactories, Collection resourceAdapters) {
+ public JCAResourceImpl(String objectName, Collection connectionFactories, Collection resourceAdapters, Collection adminObjects) {
this.objectName = objectName;
this.connectionFactories = connectionFactories;
this.resourceAdapters = resourceAdapters;
+ this.adminObjects = adminObjects;
}
public String[] getConnectionFactories() {
- ArrayList temp = new ArrayList();
- for (Iterator iterator = connectionFactories.iterator(); iterator.hasNext();) {
- JCAConnectionFactory jcaConnectionFactory = (JCAConnectionFactory) iterator.next();
- temp.add(jcaConnectionFactory.getObjectName());
- }
- return (String[])temp.toArray(new String[temp.size()]);
+ return Util.getObjectNames(getConnectionFactoryInstances());
}
public String[] getResourceAdapterInstanceNames() {
@@ -64,6 +68,70 @@
public JCAConnectionFactory[] getConnectionFactoryInstances() {
return (JCAConnectionFactory[])connectionFactories.toArray(new JCAConnectionFactory[connectionFactories.size()]);
}
+
+ public JCAManagedConnectionFactory[] getOutboundFactories() {
+ return getOutboundFactories((String[]) null);
+ }
+
+ public JCAManagedConnectionFactory[] getOutboundFactories(String connectionFactoryInterface) {
+ return getOutboundFactories(new String[]{connectionFactoryInterface});
+ }
+
+ public JCAManagedConnectionFactory[] getOutboundFactories(String[] connectionFactoryInterfaces) {
+ Set interfaceFilter = null;
+ if (connectionFactoryInterfaces != null) {
+ interfaceFilter = new HashSet(Arrays.asList(connectionFactoryInterfaces));
+ }
+
+ List list = new ArrayList();
+ for (Iterator iterator = connectionFactories.iterator(); iterator.hasNext();) {
+ JCAConnectionFactory jcaConnectionFactory = (JCAConnectionFactory) iterator.next();
+ JCAManagedConnectionFactory mcf = jcaConnectionFactory.getManagedConnectionFactoryInstance();
+ if (interfaceFilter == null || interfaceFilter.contains(mcf.getConnectionFactoryInterface())) {
+ list.add(mcf);
+ continue;
+ }
+ for (int m = 0; m < mcf.getImplementedInterfaces().length; m++) {
+ String iface = mcf.getImplementedInterfaces()[m];
+ if (interfaceFilter == null || interfaceFilter.contains(iface)) {
+ list.add(mcf);
+ break;
+ }
+ }
+ }
+ return (JCAManagedConnectionFactory[]) list.toArray(new JCAManagedConnectionFactory[list.size()]);
+ }
+
+ public String[] getAdminObjects() {
+ return Util.getObjectNames(getAdminObjectInstances());
+ }
+
+ public JCAAdminObject[] getAdminObjectInstances() {
+ return (JCAAdminObject[]) adminObjects.toArray(new JCAAdminObject[connectionFactories.size()]);
+ }
+
+ public JCAAdminObject[] getAdminObjectInstances(String adminObjectInterface) {
+ return getAdminObjectInstances(new String[] {adminObjectInterface});
+ }
+
+ public JCAAdminObject[] getAdminObjectInstances(String[] adminObjectInterfaces) {
+ Set interfaceFilter = null;
+ if (adminObjectInterfaces != null) {
+ interfaceFilter = new HashSet(Arrays.asList(adminObjectInterfaces));
+ }
+
+ List list = new ArrayList();
+
+ for (Iterator iterator = adminObjects.iterator(); iterator.hasNext();) {
+ JCAAdminObject adminObject = (JCAAdminObject) iterator.next();
+ if (interfaceFilter == null || interfaceFilter.contains(adminObject.getAdminObjectInterface())) {
+ list.add(adminObject);
+ }
+ }
+
+ return (JCAAdminObject[]) list.toArray(new JCAAdminObject[list.size()]);
+ }
+
public String getObjectName() {
return objectName;
Modified: geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/JCAResourceImplGBean.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/JCAResourceImplGBean.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/JCAResourceImplGBean.java (original)
+++ geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/JCAResourceImplGBean.java Sat Apr 22 19:55:45 2006
@@ -17,13 +17,13 @@
package org.apache.geronimo.connector;
-import org.apache.geronimo.connector.outbound.JCAConnectionFactoryImpl;
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
import org.apache.geronimo.management.geronimo.JCAResourceAdapter;
import org.apache.geronimo.management.geronimo.JCAResource;
import org.apache.geronimo.management.geronimo.JCAConnectionFactory;
+import org.apache.geronimo.management.geronimo.JCAAdminObject;
public class JCAResourceImplGBean {
@@ -34,12 +34,14 @@
infoBuilder.addAttribute("objectName", String.class, false);
infoBuilder.addReference("ConnectionFactories", JCAConnectionFactory.class, NameFactory.JCA_CONNECTION_FACTORY);
infoBuilder.addReference("ResourceAdapters", JCAResourceAdapter.class, NameFactory.JCA_RESOURCE_ADAPTER);
+ infoBuilder.addReference("AdminObjects", JCAAdminObject.class, NameFactory.JCA_ADMIN_OBJECT);
infoBuilder.addInterface(JCAResource.class);
infoBuilder.setConstructor(new String[]{
"objectName",
"ConnectionFactories",
- "ResourceAdapters"
+ "ResourceAdapters",
+ "AdminObjects"
});
GBEAN_INFO = infoBuilder.getBeanInfo();
Modified: geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/ResourceAdapterModuleImpl.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/ResourceAdapterModuleImpl.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/ResourceAdapterModuleImpl.java (original)
+++ geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/ResourceAdapterModuleImpl.java Sat Apr 22 19:55:45 2006
@@ -18,19 +18,18 @@
import java.util.Hashtable;
import java.util.Map;
-
import javax.management.ObjectName;
import org.apache.geronimo.gbean.GBeanData;
+import org.apache.geronimo.j2ee.management.impl.InvalidObjectNameException;
+import org.apache.geronimo.kernel.ObjectNameUtil;
import org.apache.geronimo.management.J2EEApplication;
import org.apache.geronimo.management.J2EEServer;
import org.apache.geronimo.management.geronimo.ResourceAdapter;
import org.apache.geronimo.management.geronimo.ResourceAdapterModule;
-import org.apache.geronimo.j2ee.management.impl.InvalidObjectNameException;
-import org.apache.geronimo.kernel.ObjectNameUtil;
/**
- * @version $Rev$ $Date$
+ * @version $Rev: 395155 $ $Date$
*/
public class ResourceAdapterModuleImpl implements ResourceAdapterModule {
private final J2EEServer server;
Modified: geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java (original)
+++ geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java Sat Apr 22 19:55:45 2006
@@ -36,6 +36,7 @@
import org.apache.geronimo.gbean.DynamicGBean;
import org.apache.geronimo.gbean.DynamicGBeanDelegate;
import org.apache.geronimo.gbean.GBeanLifecycle;
+import org.apache.geronimo.gbean.AbstractName;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.management.geronimo.JCAManagedConnectionFactory;
import org.apache.geronimo.transaction.manager.NamedXAResource;
@@ -71,6 +72,7 @@
private Object proxy;
private ConnectorMethodInterceptor interceptor;
private final Kernel kernel;
+ private final AbstractName abstractName;
private final String objectName;
private final boolean isProxyable;
private final ClassLoader classLoader;
@@ -84,6 +86,7 @@
connectionInterface = null;
connectionImplClass = null;
kernel = null;
+ abstractName = null;
objectName = null;
allImplementedInterfaces = null;
isProxyable = false;
@@ -101,6 +104,7 @@
ResourceAdapterWrapper resourceAdapterWrapper,
ConnectionManagerContainer connectionManagerContainer,
Kernel kernel,
+ AbstractName abstractName,
String objectName,
ClassLoader cl) throws InstantiationException, IllegalAccessException, ClassNotFoundException {
this.managedConnectionFactoryClass = managedConnectionFactoryClass;
@@ -136,8 +140,8 @@
delegate = new DynamicGBeanDelegate();
delegate.addAll(managedConnectionFactory);
this.kernel = kernel;
+ this.abstractName = abstractName;
this.objectName = objectName;
-
}
public String getManagedConnectionFactoryClass() {
@@ -306,7 +310,7 @@
Constructor con = cls.getConstructor(new Class[]{String.class});
value = con.newInstance(new Object[]{value});
}
- kernel.setAttribute(ObjectName.getInstance(objectName), property, value);
+ kernel.setAttribute(abstractName, property, value);
}
public Object getConfigProperty(String property) throws Exception {
Modified: geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapperGBean.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapperGBean.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapperGBean.java (original)
+++ geronimo/branches/1.1/modules/connector/src/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapperGBean.java Sat Apr 22 19:55:45 2006
@@ -19,6 +19,7 @@
import org.apache.geronimo.connector.ResourceAdapterWrapper;
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
+import org.apache.geronimo.gbean.AbstractName;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.transaction.manager.ResourceManager;
@@ -42,6 +43,7 @@
infoFactory.addAttribute("connectionInterface", String.class, true);
infoFactory.addAttribute("connectionImplClass", String.class, true);
infoFactory.addAttribute("kernel", Kernel.class, false);
+ infoFactory.addAttribute("abstractName", AbstractName.class, false);
infoFactory.addAttribute("objectName", String.class, false);
infoFactory.addAttribute("classLoader", ClassLoader.class, false);
@@ -65,6 +67,7 @@
"ResourceAdapterWrapper",
"ConnectionManagerContainer",
"kernel",
+ "abstractName",
"objectName",
"classLoader"});
Modified: geronimo/branches/1.1/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java (original)
+++ geronimo/branches/1.1/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java Sat Apr 22 19:55:45 2006
@@ -30,9 +30,9 @@
import java.util.LinkedHashSet;
import java.util.Map;
import java.util.Set;
+import java.util.LinkedHashMap;
import java.util.jar.JarFile;
import java.util.zip.ZipEntry;
-
import javax.xml.namespace.QName;
import org.apache.geronimo.common.DeploymentException;
@@ -63,10 +63,11 @@
import org.apache.geronimo.kernel.config.ConfigurationModuleType;
import org.apache.geronimo.kernel.config.ConfigurationStore;
import org.apache.geronimo.kernel.repository.Artifact;
+import org.apache.geronimo.kernel.repository.ArtifactResolver;
import org.apache.geronimo.kernel.repository.Environment;
import org.apache.geronimo.kernel.repository.Repository;
-import org.apache.geronimo.kernel.repository.ArtifactResolver;
import org.apache.geronimo.management.J2EEServer;
+import org.apache.geronimo.management.J2EEResource;
import org.apache.geronimo.schema.SchemaConversionUtils;
import org.apache.geronimo.security.deployment.SecurityBuilder;
import org.apache.geronimo.security.deployment.SecurityConfiguration;
@@ -487,7 +488,25 @@
} catch (Exception e) {
throw new DeploymentException("Error initializing J2EEApplication managed object");
}
- gbeanData.setReferencePatterns("j2eeServer", new ReferencePatterns(new AbstractNameQuery(J2EEServer.class.getName())));
+ gbeanData.setReferencePatterns("Server", new ReferencePatterns(new AbstractNameQuery(J2EEServer.class.getName())));
+
+ Map thisApp = Collections.singletonMap(NameFactory.J2EE_APPLICATION, earContext.getModuleName().getNameProperty(NameFactory.J2EE_NAME));
+ LinkedHashSet resourcePatterns = new LinkedHashSet();
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.JAVA_MAIL_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.JCA_CONNECTION_FACTORY), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.JDBC_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.JDBC_DRIVER), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.JMS_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.JNDI_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.JTA_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.RMI_IIOP_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, filter(thisApp, NameFactory.J2EE_TYPE, NameFactory.URL_RESOURCE), J2EEResource.class.getName()));
+ gbeanData.setReferencePatterns("Resources", resourcePatterns);
+
+ gbeanData.setReferencePatterns("AppClientModules", new ReferencePatterns(new AbstractNameQuery(null, thisApp, org.apache.geronimo.management.AppClientModule.class.getName())));
+ gbeanData.setReferencePatterns("EJBModules", new ReferencePatterns(new AbstractNameQuery(null, thisApp, org.apache.geronimo.management.EJBModule.class.getName())));
+ gbeanData.setReferencePatterns("ResourceAdapterModules", new ReferencePatterns(new AbstractNameQuery(null, thisApp, org.apache.geronimo.management.geronimo.ResourceAdapterModule.class.getName())));
+ gbeanData.setReferencePatterns("WebModules", new ReferencePatterns(new AbstractNameQuery(null, thisApp, org.apache.geronimo.management.geronimo.WebModule.class.getName())));
earContext.addGBean(gbeanData);
}
@@ -550,6 +569,12 @@
module.close();
}
}
+ }
+
+ private static Map filter(Map original, String key, String value) {
+ LinkedHashMap filter = new LinkedHashMap(original);
+ filter.put(key, value);
+ return filter;
}
private void addModules(JarFile earFile, ApplicationType application, GerApplicationType gerApplication, Set moduleLocations, Set modules, Environment environment, AbstractName earName) throws DeploymentException {
Modified: geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEApplicationImpl.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEApplicationImpl.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEApplicationImpl.java (original)
+++ geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEApplicationImpl.java Sat Apr 22 19:55:45 2006
@@ -17,11 +17,12 @@
package org.apache.geronimo.j2ee.management.impl;
import java.util.Hashtable;
+import java.util.Collection;
+import java.util.ArrayList;
import javax.management.ObjectName;
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
-import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.ObjectNameUtil;
import org.apache.geronimo.management.AppClientModule;
import org.apache.geronimo.management.EJBModule;
@@ -36,26 +37,35 @@
* @version $Rev$ $Date$
*/
public class J2EEApplicationImpl implements J2EEApplication {
+ private final String objectName;
private final String deploymentDescriptor;
- private final String baseName;
- private final Kernel kernel;
private final J2EEServer server;
- private final String objectName;
+ private final Collection resources;
+ private final Collection appClientModules;
+ private final Collection ejbModules;
+ private final Collection resourceAdapterModules;
+ private final Collection webModules;
+
+ public J2EEApplicationImpl(String objectName,
+ String deploymentDescriptor,
+ J2EEServer server,
+ Collection resources,
+ Collection appClientModules,
+ Collection ejbModules,
+ Collection resourceAdapterModules,
+ Collection webModules) {
- public J2EEApplicationImpl(Kernel kernel, String objectName, J2EEServer server, String deploymentDescriptor) {
this.objectName = objectName;
ObjectName myObjectName = ObjectNameUtil.getObjectName(this.objectName);
verifyObjectName(myObjectName);
- // build the base name used to query the server for child modules
- Hashtable keyPropertyList = myObjectName.getKeyPropertyList();
- String name = (String) keyPropertyList.get("name");
- String j2eeServerName = (String) keyPropertyList.get("J2EEServer");
- baseName = myObjectName.getDomain() + ":J2EEServer=" + j2eeServerName + ",J2EEApplication=" + name + ",";
-
- this.kernel = kernel;
- this.server = server;
this.deploymentDescriptor = deploymentDescriptor;
+ this.server = server;
+ this.resources = resources;
+ this.appClientModules = appClientModules;
+ this.ejbModules = ejbModules;
+ this.resourceAdapterModules = resourceAdapterModules;
+ this.webModules = webModules;
}
public String getObjectName() {
@@ -99,39 +109,50 @@
}
public String[] getModules() {
- return Util.getObjectNames(kernel,
- baseName,
- new String[]{"AppClientModule", "EJBModule", "WebModule", "ResourceAdapterModule"});
+ return Util.getObjectNames(getModulesInstances());
}
public J2EEModule[] getModulesInstances() {
- return (J2EEModule[]) Util.getObjects(kernel, baseName,
- new String[]{"AppClientModule", "EJBModule", "WebModule", "ResourceAdapterModule"}, J2EEModule.class);
+ ArrayList objects = new ArrayList();
+ if (appClientModules != null) {
+ objects.addAll(appClientModules);
+ }
+ if (ejbModules != null) {
+ objects.addAll(ejbModules);
+ }
+ if (webModules != null) {
+ objects.addAll(webModules);
+ }
+ if (resourceAdapterModules != null) {
+ objects.addAll(resourceAdapterModules);
+ }
+
+ return (J2EEModule[]) objects.toArray(new J2EEModule[objects.size()]);
}
public J2EEResource[] getResources() {
- return (J2EEResource[]) Util.getObjects(kernel, baseName,
- new String[]{"JavaMailResource", "JCAConnectionFactory", "JDBCResource", "JDBCDriver", "JMSResource", "JNDIResource", "JTAResource", "RMI_IIOPResource", "URLResource"}, J2EEResource.class);
+ if (resources == null) return new J2EEResource[0];
+ return (J2EEResource[]) resources.toArray(new J2EEResource[resources.size()]);
}
public AppClientModule[] getClientModules() {
- return (AppClientModule[]) Util.getObjects(kernel, baseName,
- new String[]{"AppClientModule"}, AppClientModule.class);
+ if (appClientModules == null) return new AppClientModule[0];
+ return (AppClientModule[]) appClientModules.toArray(new AppClientModule[appClientModules.size()]);
}
public EJBModule[] getEJBModules() {
- return (EJBModule[]) Util.getObjects(kernel, baseName,
- new String[]{"EJBModule"}, EJBModule.class);
+ if (ejbModules == null) return new EJBModule[0];
+ return (EJBModule[]) ejbModules.toArray(new EJBModule[ejbModules.size()]);
}
public ResourceAdapterModule[] getRAModules() {
- return (ResourceAdapterModule[]) Util.getObjects(kernel, baseName,
- new String[]{"ResourceAdapterModule"}, ResourceAdapterModule.class);
+ if (resourceAdapterModules == null) return new ResourceAdapterModule[0];
+ return (ResourceAdapterModule[]) resourceAdapterModules.toArray(new ResourceAdapterModule[resourceAdapterModules.size()]);
}
public WebModule[] getWebModules() {
- return (WebModule[]) Util.getObjects(kernel, baseName,
- new String[]{"WebModule"}, WebModule.class);
+ if (webModules == null) return new WebModule[0];
+ return (WebModule[]) webModules.toArray(new WebModule[webModules.size()]);
}
public String getDeploymentDescriptor() {
@@ -146,17 +167,24 @@
static {
GBeanInfoBuilder infoFactory = GBeanInfoBuilder.createStatic(J2EEApplicationImpl.class, NameFactory.J2EE_APPLICATION);
- infoFactory.addAttribute("kernel", Kernel.class, false);
- infoFactory.addAttribute("objectName", String.class, false);
- infoFactory.addReference("j2eeServer", J2EEServer.class);
infoFactory.addAttribute("deploymentDescriptor", String.class, true);
- infoFactory.addInterface(J2EEApplication.class);
+ infoFactory.addReference("Server", J2EEServer.class);
+ infoFactory.addReference("Resources", J2EEResource.class);
+ infoFactory.addReference("AppClientModules", AppClientModule.class);
+ infoFactory.addReference("EJBModules", EJBModule.class);
+ infoFactory.addReference("ResourceAdapterModules", ResourceAdapterModule.class);
+ infoFactory.addReference("WebModules", WebModule.class);
infoFactory.setConstructor(new String[]{
- "kernel",
- "objectName",
- "j2eeServer",
- "deploymentDescriptor"});
+ "objectName",
+ "deploymentDescriptor",
+ "Server",
+ "Resources",
+ "AppClientModules",
+ "EJBModules",
+ "ResourceAdapterModules",
+ "WebModules",
+ });
GBEAN_INFO = infoFactory.getBeanInfo();
}
Modified: geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEDomainImpl.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEDomainImpl.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEDomainImpl.java (original)
+++ geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEDomainImpl.java Sat Apr 22 19:55:45 2006
@@ -18,11 +18,11 @@
package org.apache.geronimo.j2ee.management.impl;
import java.util.Hashtable;
+import java.util.Collection;
import javax.management.ObjectName;
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
-import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.ObjectNameUtil;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
import org.apache.geronimo.management.geronimo.J2EEDomain;
@@ -32,17 +32,14 @@
* @version $Rev$ $Date$
*/
public class J2EEDomainImpl implements J2EEDomain {
- private final Kernel kernel;
- private final String baseName;
private final String objectName;
+ private final Collection servers;
- public J2EEDomainImpl(Kernel kernel, String objectName) {
+ public J2EEDomainImpl(String objectName, Collection servers) {
this.objectName = objectName;
ObjectName myObjectName = ObjectNameUtil.getObjectName(this.objectName);
verifyObjectName(myObjectName);
- baseName = myObjectName.getDomain() + ":";
-
- this.kernel = kernel;
+ this.servers = servers;
}
public String getObjectName() {
@@ -82,11 +79,12 @@
public String[] getServers() {
- return Util.getObjectNames(kernel, baseName, new String[]{"J2EEServer"});
+ return Util.getObjectNames(getServerInstances());
}
public J2EEServer[] getServerInstances() {
- return (J2EEServer[]) Util.getObjects(kernel, baseName, new String[]{"J2EEServer"}, J2EEServer.class);
+ if (servers == null) return new J2EEServer[0];
+ return (J2EEServer[]) servers.toArray(new J2EEServer[servers.size()]);
}
public static final GBeanInfo GBEAN_INFO;
@@ -94,12 +92,8 @@
static {
GBeanInfoBuilder infoFactory = GBeanInfoBuilder.createStatic(J2EEDomainImpl.class, NameFactory.J2EE_DOMAIN);
- infoFactory.addAttribute("kernel", Kernel.class, false);
- infoFactory.addAttribute("objectName", String.class, false);
- infoFactory.addAttribute("servers", String[].class, false);
- infoFactory.addInterface(J2EEDomain.class);
-
- infoFactory.setConstructor(new String[]{"kernel", "objectName"});
+ infoFactory.addReference("Servers", J2EEServer.class, NameFactory.J2EE_SERVER);
+ infoFactory.setConstructor(new String[]{"objectName", "Servers"});
GBEAN_INFO = infoFactory.getBeanInfo();
}
Modified: geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEServerImpl.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEServerImpl.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEServerImpl.java (original)
+++ geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/J2EEServerImpl.java Sat Apr 22 19:55:45 2006
@@ -17,34 +17,34 @@
package org.apache.geronimo.j2ee.management.impl;
-import java.lang.reflect.Array;
+import java.util.ArrayList;
+import java.util.Collection;
import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.Set;
import javax.management.ObjectName;
-import org.apache.geronimo.gbean.AbstractName;
-import org.apache.geronimo.gbean.AbstractNameQuery;
+
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
-import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.ObjectNameUtil;
import org.apache.geronimo.kernel.config.ConfigurationManager;
-import org.apache.geronimo.kernel.config.ConfigurationUtil;
-import org.apache.geronimo.kernel.proxy.ProxyManager;
import org.apache.geronimo.kernel.repository.Repository;
+import org.apache.geronimo.management.AppClientModule;
+import org.apache.geronimo.management.EJBModule;
import org.apache.geronimo.management.J2EEDeployedObject;
import org.apache.geronimo.management.J2EEResource;
import org.apache.geronimo.management.geronimo.EJBManager;
+import org.apache.geronimo.management.geronimo.J2EEApplication;
import org.apache.geronimo.management.geronimo.J2EEServer;
import org.apache.geronimo.management.geronimo.JMSManager;
import org.apache.geronimo.management.geronimo.JVM;
+import org.apache.geronimo.management.geronimo.KeystoreManager;
import org.apache.geronimo.management.geronimo.LoginService;
+import org.apache.geronimo.management.geronimo.ResourceAdapterModule;
import org.apache.geronimo.management.geronimo.SecurityRealm;
import org.apache.geronimo.management.geronimo.WebManager;
-import org.apache.geronimo.management.geronimo.KeystoreManager;
-import org.apache.geronimo.system.serverinfo.ServerInfo;
+import org.apache.geronimo.management.geronimo.WebModule;
import org.apache.geronimo.system.configuration.ConfigurationInstaller;
+import org.apache.geronimo.system.serverinfo.ServerInfo;
import org.apache.geronimo.system.threads.ThreadPool;
/**
@@ -52,23 +52,71 @@
*/
public class J2EEServerImpl implements J2EEServer {
private static final String SERVER_VENDOR = "The Apache Software Foundation";
- private final Kernel kernel;
- private final String baseName;
- private final ServerInfo serverInfo;
private final String objectName;
+ private final ServerInfo serverInfo;
+ private final Collection jvms;
+ private final Collection resources;
+ private final Collection j2eeApplications;
+ private final Collection appClientModules;
+ private final Collection webModules;
+ private final Collection ejbModules;
+ private final Collection resourceAdapterModules;
+ private final Collection webManagers;
+ private final Collection ejbManagers;
+ private final Collection jmsManagers;
+ private final Collection threadPools;
+ private final Collection repositories;
+ private final Collection securityRealms;
+ private final Collection loginServices;
+ private final Collection keystoreManagers;
+ private final ConfigurationInstaller configurationInstaller;
+ private final ConfigurationManager configurationManager;
+
+ public J2EEServerImpl(String objectName,
+ ServerInfo serverInfo,
+ Collection jvms,
+ Collection resources,
+ Collection applications,
+ Collection appClientModules,
+ Collection webModules,
+ Collection ejbModules,
+ Collection resourceAdapterModules,
+ Collection webManagers,
+ Collection ejbManagers,
+ Collection jmsManagers,
+ Collection threadPools,
+ Collection repositories,
+ Collection securityRealms,
+ Collection loginServices,
+ Collection keystoreManagers,
+ ConfigurationInstaller configurationInstaller,
+ ConfigurationManager configurationManager) {
- public J2EEServerImpl(Kernel kernel, String objectName, ServerInfo serverInfo) {
this.objectName = objectName;
ObjectName myObjectName = ObjectNameUtil.getObjectName(this.objectName);
verifyObjectName(myObjectName);
- // build the base name used to query the server for child modules
- Hashtable keyPropertyList = myObjectName.getKeyPropertyList();
- String name = (String) keyPropertyList.get("name");
- baseName = myObjectName.getDomain() + ":J2EEServer=" + name + ",";
-
- this.kernel = kernel;
this.serverInfo = serverInfo;
+ this.jvms = jvms;
+ this.resources = resources;
+
+ this.j2eeApplications = applications;
+ this.appClientModules = appClientModules;
+ this.webModules = webModules;
+ this.ejbModules = ejbModules;
+ this.resourceAdapterModules = resourceAdapterModules;
+
+ this.webManagers = webManagers;
+ this.ejbManagers = ejbManagers;
+ this.jmsManagers = jmsManagers;
+
+ this.threadPools = threadPools;
+ this.repositories = repositories;
+ this.securityRealms = securityRealms;
+ this.loginServices = loginServices;
+ this.keystoreManagers = keystoreManagers;
+ this.configurationInstaller = configurationInstaller;
+ this.configurationManager = configurationManager;
}
public String getObjectName() {
@@ -110,77 +158,124 @@
public String[] getDeployedObjects() {
- return Util.getObjectNames(kernel,
- baseName,
- new String[]{"J2EEApplication", "AppClientModule", "EJBModule", "WebModule", "ResourceAdapterModule"});
+ return Util.getObjectNames(getDeployedObjectInstances());
}
public J2EEDeployedObject[] getDeployedObjectInstances() {
- return (J2EEDeployedObject[]) Util.getObjects(kernel, baseName,
- new String[]{"J2EEApplication", "AppClientModule", "EJBModule", "WebModule", "ResourceAdapterModule"}, J2EEDeployedObject.class);
+ ArrayList objects = new ArrayList();
+ if (j2eeApplications != null) {
+ objects.addAll(j2eeApplications);
+ }
+ if (appClientModules != null) {
+ objects.addAll(appClientModules);
+ }
+ if (ejbModules != null) {
+ objects.addAll(ejbModules);
+ }
+ if (webModules != null) {
+ objects.addAll(webModules);
+ }
+ if (resourceAdapterModules != null) {
+ objects.addAll(resourceAdapterModules);
+ }
+
+ return (J2EEDeployedObject[]) objects.toArray(new J2EEDeployedObject[objects.size()]);
}
public String[] getResources() {
- return Util.getObjectNames(kernel,
- baseName,
- new String[]{"JCAResource", "JavaMailResource", "JDBCResource", "JMSResource", "JNDIResource", "JTAResource", "RMI_IIOPResource", "URLResource"});
+ return Util.getObjectNames(getResourceInstances());
}
public J2EEResource[] getResourceInstances() {
- return (J2EEResource[]) Util.getObjects(kernel, baseName,
- new String[]{"JCAResource", "JavaMailResource", "JDBCResource", "JMSResource", "JNDIResource", "JTAResource", "RMI_IIOPResource", "URLResource"}, J2EEResource.class);
+ if (resources == null) return new J2EEResource[0];
+ return (J2EEResource[]) resources.toArray(new J2EEResource[resources.size()]);
}
public String[] getJavaVMs() {
- return Util.getObjectNames(kernel, baseName, new String[]{"JVM"});
+ return Util.getObjectNames(getJavaVMInstances());
}
public JVM[] getJavaVMInstances() {
- return (JVM[]) Util.getObjects(kernel, baseName, new String[]{"JVM"}, JVM.class);
+ if (jvms == null) return new JVM[0];
+ return (JVM[]) jvms.toArray(new JVM[jvms.size()]);
}
+ public J2EEApplication[] getApplications() {
+ if (j2eeApplications == null) return new J2EEApplication[0];
+ return (J2EEApplication[]) j2eeApplications.toArray(new J2EEApplication[j2eeApplications.size()]);
+ }
+
+ public AppClientModule[] getAppClients() {
+ if (appClientModules == null) return new AppClientModule[0];
+ return (AppClientModule[]) appClientModules.toArray(new AppClientModule[appClientModules.size()]);
+ }
+
+ public WebModule[] getWebModules() {
+ if (webModules == null) return new WebModule[0];
+ return (WebModule[]) webModules.toArray(new WebModule[webModules.size()]);
+ }
+
+ public EJBModule[] getEJBModules() {
+ if (ejbModules == null) return new EJBModule[0];
+ return (EJBModule[]) ejbModules.toArray(new EJBModule[ejbModules.size()]);
+ }
+
+ public ResourceAdapterModule[] getResourceAdapterModules() {
+ if (resourceAdapterModules == null) return new ResourceAdapterModule[0];
+ return (ResourceAdapterModule[]) resourceAdapterModules.toArray(new ResourceAdapterModule[resourceAdapterModules.size()]);
+ }
+
+
public WebManager[] getWebManagers() {
- return (WebManager[]) getObjects(WebManager.class, false);
+ if (webManagers == null) return new WebManager[0];
+ return (WebManager[]) webManagers.toArray(new WebManager[webManagers.size()]);
}
public EJBManager[] getEJBManagers() {
- return (EJBManager[]) getObjects(EJBManager.class, false);
+ if (ejbManagers == null) return new EJBManager[0];
+ return (EJBManager[]) ejbManagers.toArray(new EJBManager[ejbManagers.size()]);
}
public JMSManager[] getJMSManagers() {
- return (JMSManager[]) getObjects(JMSManager.class, false);
+ if (jmsManagers == null) return new JMSManager[0];
+ return (JMSManager[]) jmsManagers.toArray(new JMSManager[jmsManagers.size()]);
}
public ThreadPool[] getThreadPools() {
- return (ThreadPool[]) getObjects(ThreadPool.class, true);
+ if (threadPools == null) return new ThreadPool[0];
+ return (ThreadPool[]) threadPools.toArray(new ThreadPool[threadPools.size()]);
}
public Repository[] getRepositories() {
- return (Repository[]) getObjects(Repository.class, true);
+ if (repositories == null) return new Repository[0];
+ return (Repository[]) repositories.toArray(new Repository[repositories.size()]);
}
public SecurityRealm[] getSecurityRealms() {
- return (SecurityRealm[]) getObjects(SecurityRealm.class, true);
+ if (securityRealms == null) return new SecurityRealm[0];
+ return (SecurityRealm[]) securityRealms.toArray(new SecurityRealm[securityRealms.size()]);
}
public ServerInfo getServerInfo() {
- return (ServerInfo) getObject(ServerInfo.class);
+ return serverInfo;
}
public LoginService getLoginService() {
- return (LoginService) getObject(LoginService.class);
+ if (loginServices == null) return null;
+ return (LoginService) loginServices.iterator().next();
}
public KeystoreManager getKeystoreManager() {
- return (KeystoreManager) getObject(KeystoreManager.class);
+ if (keystoreManagers == null) return null;
+ return (KeystoreManager) keystoreManagers.iterator().next();
}
public ConfigurationInstaller getConfigurationInstaller() {
- return (ConfigurationInstaller) getObject(ConfigurationInstaller.class);
+ return configurationInstaller;
}
public ConfigurationManager getConfigurationManager() {
- return ConfigurationUtil.getConfigurationManager(kernel);
+ return configurationManager;
}
public String getServerVendor() {
@@ -191,53 +286,51 @@
return serverInfo.getVersion();
}
- private Object getObject(Class type) {
- Set names = kernel.listGBeans(new AbstractNameQuery(type.getName()));
- if (names.isEmpty()) {
- return null;
- }
- AbstractName name = (AbstractName) names.iterator().next();
- return kernel.getProxyManager().createProxy(name, type);
- }
-
- private Object[] getObjects(Class type, boolean returnEmpty) {
- Set names = kernel.listGBeans(new AbstractNameQuery(type.getName()));
-
- if(names.size() == 0) {
- if (returnEmpty) {
- return (Object[]) Array.newInstance(type, 0);
- } else {
- return null;
- }
- }
-
- Object[] results = (Object[]) Array.newInstance(type, names.size());
- ProxyManager mgr = kernel.getProxyManager();
- int i=0;
- for (Iterator it = names.iterator(); it.hasNext();) {
- AbstractName name = (AbstractName) it.next();
- results[i++] = mgr.createProxy(name, type.getClassLoader());
- }
- return results;
- }
-
public static final GBeanInfo GBEAN_INFO;
static {
GBeanInfoBuilder infoFactory = GBeanInfoBuilder.createStatic(J2EEServerImpl.class, NameFactory.J2EE_SERVER);
- infoFactory.addAttribute("kernel", Kernel.class, false);
- infoFactory.addAttribute("objectName", String.class, false);
- infoFactory.addAttribute("deployedObjects", String[].class, false);
- infoFactory.addAttribute("resources", String[].class, false);
- infoFactory.addAttribute("javaVMs", String[].class, false);
- infoFactory.addAttribute("serverVendor", String.class, false);
- infoFactory.addAttribute("serverVersion", String.class, false);
- infoFactory.addInterface(J2EEServer.class);
-
infoFactory.addReference("ServerInfo", ServerInfo.class, NameFactory.GERONIMO_SERVICE);
-
- infoFactory.setConstructor(new String[]{"kernel", "objectName", "ServerInfo"});
+ infoFactory.addReference("JVMs", JVM.class, NameFactory.JVM);
+ infoFactory.addReference("Resources", J2EEResource.class); // several types match this
+ infoFactory.addReference("Applications", J2EEApplication.class, NameFactory.J2EE_APPLICATION);
+ infoFactory.addReference("AppClientModules", AppClientModule.class, NameFactory.APP_CLIENT_MODULE);
+ infoFactory.addReference("WebModules", WebModule.class, NameFactory.WEB_MODULE);
+ infoFactory.addReference("EJBModules", EJBModule.class, NameFactory.EJB_MODULE);
+ infoFactory.addReference("ResourceAdapterModules", ResourceAdapterModule.class, NameFactory.RESOURCE_ADAPTER_MODULE);
+ infoFactory.addReference("WebManagers", WebManager.class);
+ infoFactory.addReference("EJBManagers", EJBManager.class);
+ infoFactory.addReference("JMSManagers", JMSManager.class);
+ infoFactory.addReference("ThreadPools", ThreadPool.class);
+ infoFactory.addReference("Repositories", Repository.class);
+ infoFactory.addReference("SecurityRealms", SecurityRealm.class);
+ infoFactory.addReference("LoginServices", LoginService.class);
+ infoFactory.addReference("KeystoreManagers", KeystoreManager.class);
+ infoFactory.addReference("ConfigurationInstaller", ConfigurationInstaller.class);
+ infoFactory.addReference("ConfigurationManager", ConfigurationManager.class);
+
+ infoFactory.setConstructor(new String[]{
+ "objectName",
+ "ServerInfo",
+ "JVMs",
+ "Resources",
+ "Applications",
+ "AppClientModules",
+ "WebModules",
+ "EJBModules",
+ "ResourceAdapterModules",
+ "WebManagers",
+ "EJBManagers",
+ "JMSManagers",
+ "ThreadPools",
+ "Repositories",
+ "SecurityRealms",
+ "LoginServices",
+ "KeystoreManagers",
+ "ConfigurationInstaller",
+ "ConfigurationManager",
+ });
GBEAN_INFO = infoFactory.getBeanInfo();
}
Modified: geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/JVMImpl.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/JVMImpl.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/JVMImpl.java (original)
+++ geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/JVMImpl.java Sat Apr 22 19:55:45 2006
@@ -20,22 +20,21 @@
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Date;
-import java.util.Properties;
import java.util.Hashtable;
-
+import java.util.Properties;
import javax.management.ObjectName;
import javax.management.j2ee.statistics.Stats;
+
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
-import org.apache.geronimo.management.geronimo.JVM;
-import org.apache.geronimo.management.StatisticsProvider;
-import org.apache.geronimo.management.stats.JVMStatsImpl;
-import org.apache.geronimo.management.stats.BoundedRangeImpl;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.ObjectNameUtil;
-import org.apache.commons.logging.LogFactory;
-import org.apache.commons.logging.Log;
+import org.apache.geronimo.management.StatisticsProvider;
+import org.apache.geronimo.management.geronimo.JVM;
+import org.apache.geronimo.management.stats.BoundedRangeImpl;
+import org.apache.geronimo.management.stats.JVMStatsImpl;
+import org.apache.geronimo.system.logging.SystemLog;
/**
*
@@ -43,7 +42,6 @@
* @version $Rev$ $Date$
*/
public class JVMImpl implements JVM, StatisticsProvider {
- private final static Log log = LogFactory.getLog(JVMImpl.class);
public static final String JAVA_VERSION = System.getProperty("java.version");
public static final String JAVA_VENDOR = System.getProperty("java.vendor");
public static final String NODE;
@@ -61,19 +59,15 @@
private final String objectName;
private final Kernel kernel;
- private final String baseName;
+ private final SystemLog systemLog;
private JVMStatsImpl stats;
- public JVMImpl(String objectName, Kernel kernel) {
+ public JVMImpl(String objectName, Kernel kernel, SystemLog systemLog) {
this.objectName = objectName;
this.kernel = kernel;
+ this.systemLog = systemLog;
ObjectName myObjectName = ObjectNameUtil.getObjectName(this.objectName);
verifyObjectName(myObjectName);
-
- // build the base name used to query the server for related modules
- Hashtable keyPropertyList = myObjectName.getKeyPropertyList();
- String serverName = (String) keyPropertyList.get("J2EEServer");
- baseName = myObjectName.getDomain() + ":J2EEServer=" + serverName + ",";
}
/**
@@ -183,25 +177,16 @@
return System.getProperties();
}
- public String getSystemLog() {
- String[] logs = Util.getObjectNames(kernel, baseName, new String[]{NameFactory.SYSTEM_LOG});
- if(logs.length != 1) {
- log.error("Unable to resolve ObjectName for system log; got "+logs.length+" results!");
- return null;
- }
- return logs[0];
+ public SystemLog getSystemLog() {
+ return systemLog;
}
public static final GBeanInfo GBEAN_INFO;
static {
GBeanInfoBuilder infoFactory = GBeanInfoBuilder.createStatic(JVMImpl.class, NameFactory.JVM);
-
-// infoFactory.addAttribute("objectName", String.class, false);
- infoFactory.addAttribute("kernel", Kernel.class, false);
- infoFactory.addInterface(JVM.class);
- infoFactory.addInterface(StatisticsProvider.class);
- infoFactory.setConstructor(new String[] {"objectName", "kernel"});
+ infoFactory.addReference("SystemLog", SystemLog.class);
+ infoFactory.setConstructor(new String[] {"objectName", "kernel", "SystemLog"});
GBEAN_INFO = infoFactory.getBeanInfo();
}
Modified: geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/Util.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/Util.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/Util.java (original)
+++ geronimo/branches/1.1/modules/j2ee/src/java/org/apache/geronimo/j2ee/management/impl/Util.java Sat Apr 22 19:55:45 2006
@@ -17,59 +17,21 @@
package org.apache.geronimo.j2ee.management.impl;
-import java.lang.reflect.Array;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import javax.management.MalformedObjectNameException;
-import javax.management.ObjectName;
-import org.apache.geronimo.kernel.Kernel;
-import org.apache.geronimo.kernel.proxy.ProxyManager;
+import org.apache.geronimo.management.J2EEManagedObject;
/**
* @version $Rev$ $Date$
*/
public class Util {
-
- public static String[] getObjectNames(Kernel kernel, String parentName, String[] j2eeTypes) {
- List objectNames = new LinkedList();
- for (int i = 0; i < j2eeTypes.length; i++) {
- String j2eeType = j2eeTypes[i];
- String name = parentName + "j2eeType=" + j2eeType + ",*";
- try {
- objectNames.addAll(kernel.listGBeans(new ObjectName(name)));
- } catch (MalformedObjectNameException e) {
- throw new IllegalArgumentException("Malformed ObjectName: " + name);
- }
- }
- String[] names = new String[objectNames.size()];
- Iterator iterator = objectNames.iterator();
- for (int i = 0; iterator.hasNext(); i++) {
- names[i] = iterator.next().toString();
- }
- return names;
+ private Util() {
}
-
- public static Object[] getObjects(Kernel kernel, String parentName, String[] j2eeTypes, Class target) {
- List objectNames = new LinkedList();
- for (int i = 0; i < j2eeTypes.length; i++) {
- String j2eeType = j2eeTypes[i];
- String name = parentName + "j2eeType=" + j2eeType + ",*";
- try {
- objectNames.addAll(kernel.listGBeans(new ObjectName(name)));
- } catch (MalformedObjectNameException e) {
- throw new IllegalArgumentException("Malformed ObjectName: " + name);
- }
+ public static String[] getObjectNames(J2EEManagedObject[] objects) {
+ String[] objectNames = new String[objects.length];
+ for (int i = 0; i < objects.length; i++) {
+ J2EEManagedObject object = objects[i];
+ objectNames[i] = object.getObjectName();
}
- Object[] objects = (Object[]) Array.newInstance(target,objectNames.size());
- ProxyManager pm = kernel.getProxyManager();
- Iterator iterator = objectNames.iterator();
- for (int i = 0; iterator.hasNext(); i++) {
- objects[i] = pm.createProxy((ObjectName)iterator.next(), target.getClassLoader());
- }
- return objects;
+ return objectNames;
}
-
-
}
Modified: geronimo/branches/1.1/modules/j2ee/src/test/org/apache/geronimo/j2ee/management/Abstract77Test.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/j2ee/src/test/org/apache/geronimo/j2ee/management/Abstract77Test.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/j2ee/src/test/org/apache/geronimo/j2ee/management/Abstract77Test.java (original)
+++ geronimo/branches/1.1/modules/j2ee/src/test/org/apache/geronimo/j2ee/management/Abstract77Test.java Sat Apr 22 19:55:45 2006
@@ -20,6 +20,8 @@
import java.util.HashSet;
import java.util.Set;
import java.util.Hashtable;
+import java.util.LinkedHashSet;
+import java.util.Collections;
import javax.management.ObjectName;
import javax.management.MalformedObjectNameException;
@@ -27,13 +29,24 @@
import org.apache.geronimo.gbean.GBeanData;
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.AbstractName;
+import org.apache.geronimo.gbean.ReferencePatterns;
+import org.apache.geronimo.gbean.AbstractNameQuery;
import org.apache.geronimo.j2ee.management.impl.J2EEDomainImpl;
import org.apache.geronimo.j2ee.management.impl.J2EEServerImpl;
import org.apache.geronimo.j2ee.management.impl.JVMImpl;
+import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
import org.apache.geronimo.kernel.KernelFactory;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.repository.Artifact;
import org.apache.geronimo.system.serverinfo.BasicServerInfo;
+import org.apache.geronimo.management.J2EEResource;
+import org.apache.geronimo.management.EJBModule;
+import org.apache.geronimo.management.AppClientModule;
+import org.apache.geronimo.management.geronimo.WebModule;
+import org.apache.geronimo.management.geronimo.ResourceAdapterModule;
+import org.apache.geronimo.management.geronimo.J2EEApplication;
+import org.apache.geronimo.management.geronimo.J2EEServer;
+import org.apache.geronimo.management.geronimo.JVM;
import org.apache.log4j.Logger;
import org.apache.log4j.Level;
import org.apache.log4j.ConsoleAppender;
@@ -53,11 +66,11 @@
protected Kernel kernel;
private static GBeanData buildGBeanData(String[] key, String[] value, GBeanInfo info) {
- AbstractName abstractName = buildAbstractName(key, value, info);
+ AbstractName abstractName = buildAbstractName(key, value);
return new GBeanData(abstractName, info);
}
- private static AbstractName buildAbstractName(String[] key, String value[], GBeanInfo info) {
+ private static AbstractName buildAbstractName(String[] key, String value[]) {
Hashtable names = new Hashtable();
for (int i = 0; i < key.length; i++) {
String k = key[i];
@@ -82,16 +95,39 @@
kernel.boot();
ClassLoader classLoader = getClass().getClassLoader();
+
+ // server info
SERVER_INFO_DATA.setAttribute("baseDirectory", System.getProperty("java.io.tmpdir"));
kernel.loadGBean(SERVER_INFO_DATA, classLoader);
+ // domain
+ DOMAIN_DATA.setReferencePatterns("Servers", new ReferencePatterns(new AbstractNameQuery(J2EEServer.class.getName())));
kernel.loadGBean(DOMAIN_DATA, classLoader);
+ // server
SERVER_DATA.setReferencePattern("ServerInfo", SERVER_INFO_DATA.getAbstractName());
+ SERVER_DATA.setReferencePatterns("JVMs", new ReferencePatterns(new AbstractNameQuery(JVM.class.getName())));
+ LinkedHashSet resourcePatterns = new LinkedHashSet();
+ resourcePatterns.add(new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.JAVA_MAIL_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.JCA_CONNECTION_FACTORY), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.JDBC_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.JMS_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.JNDI_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.JTA_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.RMI_IIOP_RESOURCE), J2EEResource.class.getName()));
+ resourcePatterns.add(new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.URL_RESOURCE), J2EEResource.class.getName()));
+ SERVER_DATA.setReferencePatterns("Resources", resourcePatterns);
+ SERVER_DATA.setReferencePatterns("Applications", new ReferencePatterns(new AbstractNameQuery(J2EEApplication.class.getName())));
+ SERVER_DATA.setReferencePatterns("AppClientModules", new ReferencePatterns(new AbstractNameQuery(AppClientModule.class.getName())));
+ SERVER_DATA.setReferencePatterns("EJBModules", new ReferencePatterns(new AbstractNameQuery(EJBModule.class.getName())));
+ SERVER_DATA.setReferencePatterns("ResourceAdapterModules", new ReferencePatterns(new AbstractNameQuery(ResourceAdapterModule.class.getName())));
+ SERVER_DATA.setReferencePatterns("WebModules", new ReferencePatterns(new AbstractNameQuery(WebModule.class.getName())));
kernel.loadGBean(SERVER_DATA, classLoader);
-
+ // JVM
kernel.loadGBean(JVM_DATA, classLoader);
+
+ // start um
kernel.startGBean(SERVER_INFO_DATA.getAbstractName());
kernel.startGBean(DOMAIN_DATA.getAbstractName());
kernel.startGBean(SERVER_DATA.getAbstractName());
Modified: geronimo/branches/1.1/modules/j2ee/src/test/org/apache/geronimo/j2ee/management/JVMTest.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/j2ee/src/test/org/apache/geronimo/j2ee/management/JVMTest.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/j2ee/src/test/org/apache/geronimo/j2ee/management/JVMTest.java (original)
+++ geronimo/branches/1.1/modules/j2ee/src/test/org/apache/geronimo/j2ee/management/JVMTest.java Sat Apr 22 19:55:45 2006
@@ -39,9 +39,9 @@
public void testStandardAttributes() throws Exception {
assertEquals(JVM_DATA.getAbstractName().getObjectName().getCanonicalName(), kernel.getAttribute(JVM_DATA.getAbstractName(), "objectName"));
- assertEquals(System.getProperty("java.version"), kernel.getAttribute(JVM_DATA.getAbstractName().getObjectName(), "javaVersion"));
- assertEquals(System.getProperty("java.vendor"), kernel.getAttribute(JVM_DATA.getAbstractName().getObjectName(), "javaVendor"));
- assertEquals(node, kernel.getAttribute(JVM_DATA.getAbstractName().getObjectName(), "node"));
+ assertEquals(System.getProperty("java.version"), kernel.getAttribute(JVM_DATA.getAbstractName(), "javaVersion"));
+ assertEquals(System.getProperty("java.vendor"), kernel.getAttribute(JVM_DATA.getAbstractName(), "javaVendor"));
+ assertEquals(node, kernel.getAttribute(JVM_DATA.getAbstractName(), "node"));
}
public void testGeronimoInterface() {
@@ -50,12 +50,12 @@
}
public void testGeronimoAttributes() throws Exception {
- assertEquals(new Integer(runtime.availableProcessors()), kernel.getAttribute(JVM_DATA.getAbstractName().getObjectName(), "availableProcessors"));
+ assertEquals(new Integer(runtime.availableProcessors()), kernel.getAttribute(JVM_DATA.getAbstractName(), "availableProcessors"));
}
public void testStatistics() throws Exception {
- assertEquals(Boolean.TRUE, kernel.getAttribute(JVM_DATA.getAbstractName().getObjectName(), "statisticsProvider"));
- JVMStats stats = (JVMStats) kernel.getAttribute(JVM_DATA.getAbstractName().getObjectName(), "stats");
+ assertEquals(Boolean.TRUE, kernel.getAttribute(JVM_DATA.getAbstractName(), "statisticsProvider"));
+ JVMStats stats = (JVMStats) kernel.getAttribute(JVM_DATA.getAbstractName(), "stats");
assertNotNull(stats.getHeapSize());
assertTrue(stats.getHeapSize().getCurrent() > 0);
assertNotNull(stats.getHeapSize().getDescription());
Modified: geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java (original)
+++ geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java Sat Apr 22 19:55:45 2006
@@ -224,6 +224,16 @@
attribute.isManageable(),
attribute.getGetterName(),
attribute.getSetterName()));
+ } else {
+ if (attributeName.equals("kernel")) {
+ addAttribute("kernel", Kernel.class, false);
+ } else if (attributeName.equals("classLoader")) {
+ addAttribute("classLoader", ClassLoader.class, false);
+ } else if (attributeName.equals("abstractName")) {
+ addAttribute("abstractName", AbstractName.class, false);
+ } else if (attributeName.equals("objectName")) {
+ addAttribute("obectName", String.class, false);
+ }
}
}
}
@@ -249,6 +259,7 @@
String type = attributeInfo.getType();
return ("kernel".equals(name) && Kernel.class.getName().equals(type)) ||
("classLoader".equals(name) && ClassLoader.class.getName().equals(type)) ||
+ ("abstractName".equals(name) && AbstractName.class.getName().equals(type)) ||
("objectName".equals(name) && String.class.getName().equals(type));
}
@@ -444,14 +455,14 @@
boolean[] isReference = new boolean[arguments.size()];
for (int i = 0; i < argumentTypes.length; i++) {
String argumentName = (String) arguments.get(i);
- if (attributes.containsKey(argumentName)) {
+ if (references.containsKey(argumentName)) {
+ argumentTypes[i] = ((RefInfo) references.get(argumentName)).getJavaType();
+ isReference[i] = true;
+ } else if (attributes.containsKey(argumentName)) {
GAttributeInfo attribute = (GAttributeInfo) attributes.get(argumentName);
argumentTypes[i] = attribute.getType();
isReference[i] = false;
- } else if (references.containsKey(argumentName)) {
- argumentTypes[i] = ((RefInfo) references.get(argumentName)).getJavaType();
- isReference[i] = true;
- }
+ }
}
Constructor[] constructors = gbeanType.getConstructors();
Modified: geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java (original)
+++ geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java Sat Apr 22 19:55:45 2006
@@ -366,7 +366,7 @@
public Object getValue(Object target) throws Exception {
if (!readable) {
if (persistent) {
- throw new IllegalStateException("This persistent attribute is not accessible while started. " + getDescription());
+ return persistentValue;
} else {
throw new IllegalStateException("This attribute is not readable. " + getDescription());
}
@@ -389,7 +389,7 @@
public void setValue(Object target, Object value) throws Exception {
if (!writable) {
if (persistent) {
- throw new IllegalStateException("This persistent attribute is not modifable while running. " + getDescription());
+ throw new IllegalStateException("This persistent attribute is not modifable while the gbean is running. " + getDescription());
} else {
throw new IllegalStateException("This attribute is not writable. " + getDescription());
}
Modified: geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanInstance.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanInstance.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanInstance.java (original)
+++ geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanInstance.java Sat Apr 22 19:55:45 2006
@@ -310,15 +310,15 @@
Class[] parameterTypes = new Class[arguments.size()];
for (int i = 0; i < parameterTypes.length; i++) {
String argumentName = (String) arguments.get(i);
- if (attributeIndex.containsKey(argumentName)) {
- Integer index = (Integer) attributeIndex.get(argumentName);
- GBeanAttribute attribute = attributes[index.intValue()];
- parameterTypes[i] = attribute.getType();
- } else if (referenceIndex.containsKey(argumentName)) {
+ if (referenceIndex.containsKey(argumentName)) {
Integer index = (Integer) referenceIndex.get(argumentName);
GBeanReference reference = references[index.intValue()];
parameterTypes[i] = reference.getProxyType();
- }
+ } else if (attributeIndex.containsKey(argumentName)) {
+ Integer index = (Integer) attributeIndex.get(argumentName);
+ GBeanAttribute attribute = attributes[index.intValue()];
+ parameterTypes[i] = attribute.getType();
+ }
}
try {
constructor = type.getConstructor(parameterTypes);
@@ -1183,6 +1183,13 @@
//
// Special attributes
//
+ attributesMap.put("abstractName",
+ GBeanAttribute.createSpecialAttribute((GBeanAttribute) attributesMap.get("abstractName"),
+ this,
+ "abstractName",
+ AbstractName.class,
+ getAbstractName()));
+
attributesMap.put("objectName",
GBeanAttribute.createSpecialAttribute((GBeanAttribute) attributesMap.get("objectName"),
this,
Modified: geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/Jsr77Naming.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/Jsr77Naming.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/Jsr77Naming.java (original)
+++ geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/Jsr77Naming.java Sat Apr 22 19:55:45 2006
@@ -82,7 +82,6 @@
objectNameMap.clear();
objectNameMap.put(J2EE_TYPE, "J2EEDomain");
objectNameMap.put(J2EE_NAME, DEFAULT_DOMAIN_NAME);
- objectNameMap.put("J2EEServer", DEFAULT_SERVER_NAME);
} else if ("J2EEServer".equals(type)) {
//special case J2EEServer gbean
objectNameMap.clear();
Modified: geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java (original)
+++ geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java Sat Apr 22 19:55:45 2006
@@ -354,10 +354,6 @@
/**
* @deprecated Use AbstractName version instead
*/
- ClassLoader getClassLoaderFor(ObjectName name) throws GBeanNotFoundException;
- /**
- * @deprecated Use AbstractName version instead
- */
GBeanInfo getGBeanInfo(ObjectName name) throws GBeanNotFoundException;
/**
* @deprecated Use AbstractName version instead
@@ -373,10 +369,6 @@
* @deprecated Use AbstractName version instead
*/
Object getAttribute(ObjectName name, String attributeName) throws GBeanNotFoundException, NoSuchAttributeException, Exception;
- /**
- * @deprecated Use AbstractName version instead
- */
- void setAttribute(ObjectName name, String attributeName, Object attributeValue) throws GBeanNotFoundException, NoSuchAttributeException, Exception;
/**
* @deprecated Use AbstractName version instead
*/
Modified: geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/KernelGBean.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/KernelGBean.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/KernelGBean.java (original)
+++ geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/KernelGBean.java Sat Apr 22 19:55:45 2006
@@ -214,10 +214,6 @@
return kernel.getGBeanStartTime(shortName, type);
}
- public ClassLoader getClassLoaderFor(ObjectName name) throws GBeanNotFoundException {
- return kernel.getClassLoaderFor(name);
- }
-
public ClassLoader getClassLoaderFor(AbstractName name) throws GBeanNotFoundException {
return kernel.getClassLoaderFor(name);
}
@@ -300,10 +296,6 @@
public Object getAttribute(String shortName, Class type, String attributeName) throws GBeanNotFoundException, NoSuchAttributeException, Exception {
return kernel.getAttribute(shortName, type, attributeName);
- }
-
- public void setAttribute(ObjectName objectName, String attributeName, Object attributeValue) throws GBeanNotFoundException, NoSuchAttributeException, Exception {
- kernel.setAttribute(objectName, attributeName, attributeValue);
}
public void setAttribute(AbstractName abstractName, String attributeName, Object attributeValue) throws GBeanNotFoundException, NoSuchAttributeException, Exception {
Modified: geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/basic/BasicKernel.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/basic/BasicKernel.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/basic/BasicKernel.java (original)
+++ geronimo/branches/1.1/modules/kernel/src/java/org/apache/geronimo/kernel/basic/BasicKernel.java Sat Apr 22 19:55:45 2006
@@ -191,11 +191,6 @@
return gbeanInstance.getAttribute(attributeName);
}
- public void setAttribute(ObjectName objectName, String attributeName, Object attributeValue) throws GBeanNotFoundException, NoSuchAttributeException, Exception {
- GBeanInstance gbeanInstance = registry.getGBeanInstance(objectName);
- gbeanInstance.setAttribute(attributeName, attributeValue);
- }
-
public void setAttribute(AbstractName abstractName, String attributeName, Object attributeValue) throws GBeanNotFoundException, NoSuchAttributeException, Exception {
GBeanInstance gbeanInstance = registry.getGBeanInstance(abstractName);
gbeanInstance.setAttribute(attributeName, attributeValue);
@@ -684,11 +679,6 @@
public boolean isRunning() {
return running;
- }
-
- public ClassLoader getClassLoaderFor(ObjectName name) throws GBeanNotFoundException {
- GBeanInstance gbeanInstance = registry.getGBeanInstance(name);
- return gbeanInstance.getClassLoader();
}
public ClassLoader getClassLoaderFor(AbstractName name) throws GBeanNotFoundException {
Modified: geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/J2EEServer.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/J2EEServer.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/J2EEServer.java (original)
+++ geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/J2EEServer.java Sat Apr 22 19:55:45 2006
@@ -18,6 +18,8 @@
import org.apache.geronimo.management.J2EEDeployedObject;
import org.apache.geronimo.management.J2EEResource;
+import org.apache.geronimo.management.AppClientModule;
+import org.apache.geronimo.management.EJBModule;
import org.apache.geronimo.kernel.repository.Repository;
import org.apache.geronimo.kernel.config.ConfigurationManager;
import org.apache.geronimo.system.serverinfo.ServerInfo;
@@ -86,8 +88,6 @@
/**
* Gets the SecurityRealms associated with this J2EEServer.
*
- * @see org.apache.geronimo.security.realm.SecurityRealm
- *
* @return The ObjectNames of the realms, in String form.
*/
public SecurityRealm[] getSecurityRealms();
@@ -101,8 +101,6 @@
* Gets the ObjectName of the LoginService associated with this
* J2EEServer.
*
- * @see org.apache.geronimo.security.jaas.server.JaasLoginServiceMBean
- *
* @return The ObjectName of the LoginService, in String form.
*/
public LoginService getLoginService();
@@ -111,8 +109,6 @@
* Gets the ObjectName of the KeystoreManager associated with this
* J2EEServer.
*
- * @see org.apache.geronimo.security.keystore.FileKeystoreManager
- *
* @return The ObjectName of the KeystoreManager, in String form.
*/
public KeystoreManager getKeystoreManager();
@@ -126,4 +122,14 @@
* Gets the ConfigurationManager associated with this J2EEServer.
*/
public ConfigurationManager getConfigurationManager();
+
+ J2EEApplication[] getApplications();
+
+ AppClientModule[] getAppClients();
+
+ WebModule[] getWebModules();
+
+ EJBModule[] getEJBModules();
+
+ ResourceAdapterModule[] getResourceAdapterModules();
}
Modified: geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JCAAdminObject.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JCAAdminObject.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JCAAdminObject.java (original)
+++ geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JCAAdminObject.java Sat Apr 22 19:55:45 2006
@@ -18,13 +18,14 @@
import java.util.Map;
+import org.apache.geronimo.management.J2EEManagedObject;
+
/**
* Management interface for admin objects
- * todo: make it implement J2EEManagedObject
*
* @version $Rev: 368994 $ $Date: 2006-01-14 02:07:18 -0500 (Sat, 14 Jan 2006) $
*/
-public interface JCAAdminObject {
+public interface JCAAdminObject extends J2EEManagedObject {
public String getAdminObjectClass();
public String getAdminObjectInterface();
Modified: geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JCAResource.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JCAResource.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JCAResource.java (original)
+++ geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JCAResource.java Sat Apr 22 19:55:45 2006
@@ -33,4 +33,18 @@
JCAResourceAdapter[] getResourceAdapterInstances();
JCAConnectionFactory[] getConnectionFactoryInstances();
+
+ JCAManagedConnectionFactory[] getOutboundFactories();
+
+ JCAManagedConnectionFactory[] getOutboundFactories(String connectionFactoryInterface);
+
+ JCAManagedConnectionFactory[] getOutboundFactories(String[] connectionFactoryInterfaces);
+
+ String[] getAdminObjects();
+
+ JCAAdminObject[] getAdminObjectInstances();
+
+ JCAAdminObject[] getAdminObjectInstances(String adminObjectInterface);
+
+ JCAAdminObject[] getAdminObjectInstances(String[] adminObjectInterfaces);
}
Modified: geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JVM.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JVM.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JVM.java (original)
+++ geronimo/branches/1.1/modules/management/src/java/org/apache/geronimo/management/geronimo/JVM.java Sat Apr 22 19:55:45 2006
@@ -20,6 +20,8 @@
import java.util.Date;
import java.util.Properties;
+import org.apache.geronimo.system.logging.SystemLog;
+
/**
* Geronimo extensions to the standard JSR-77 JVM type.
*
@@ -38,7 +40,8 @@
Properties getSystemProperties();
/**
- * Gets the ObjectName of the system log for this JVM
+ * Gets the system log instance
*/
- String getSystemLog();
+ SystemLog getSystemLog();
+
}
Modified: geronimo/branches/1.1/modules/security/src/java/org/apache/geronimo/security/keystore/FileKeystoreInstance.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/security/src/java/org/apache/geronimo/security/keystore/FileKeystoreInstance.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/security/src/java/org/apache/geronimo/security/keystore/FileKeystoreInstance.java (original)
+++ geronimo/branches/1.1/modules/security/src/java/org/apache/geronimo/security/keystore/FileKeystoreInstance.java Sat Apr 22 19:55:45 2006
@@ -47,8 +47,6 @@
import java.util.List;
import java.util.Map;
import java.util.Vector;
-import javax.management.MalformedObjectNameException;
-import javax.management.ObjectName;
import javax.net.ssl.KeyManager;
import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.TrustManager;
@@ -58,6 +56,7 @@
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
import org.apache.geronimo.gbean.GBeanLifecycle;
+import org.apache.geronimo.gbean.AbstractName;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.management.geronimo.KeystoreInstance;
@@ -83,7 +82,7 @@
private char[] keystorePassword; // Used to "unlock" the keystore for other services
private Map keyPasswords = new HashMap();
private Kernel kernel;
- private ObjectName objectName;
+ private AbstractName abstractName;
private char[] openPassword; // The password last used to open the keystore for editing
// The following variables are the state of the keystore, which should be chucked if the file on disk changes
private List privateKeys = new ArrayList();
@@ -91,12 +90,12 @@
private KeyStore keystore;
private long keystoreReadDate = Long.MIN_VALUE;
- public FileKeystoreInstance(ServerInfo serverInfo, URI keystorePath, String keystoreName, String keystorePassword, String keyPasswords, Kernel kernel, String objectName) throws MalformedObjectNameException {
+ public FileKeystoreInstance(ServerInfo serverInfo, URI keystorePath, String keystoreName, String keystorePassword, String keyPasswords, Kernel kernel, AbstractName abstractName) {
this.serverInfo = serverInfo;
this.keystorePath = keystorePath;
this.keystoreName = keystoreName;
this.kernel = kernel;
- this.objectName = ObjectName.getInstance(objectName);
+ this.abstractName = abstractName;
this.keystorePassword = keystorePassword == null ? null : keystorePassword.toCharArray();
if(keyPasswords != null) {
String[] keys = keyPasswords.split("\\]\\!\\[");
@@ -193,7 +192,7 @@
buf.append(entry.getKey()).append("=").append(entry.getValue());
}
try {
- kernel.setAttribute(objectName, "keyPasswords", buf.toString());
+ kernel.setAttribute(abstractName, "keyPasswords", buf.toString());
} catch (Exception e) {
log.error("Unable to save key passwords in keystore '"+keystoreName+"'", e);
}
@@ -320,10 +319,10 @@
infoFactory.addAttribute("keystorePassword", String.class, true, true);
infoFactory.addAttribute("keyPasswords", String.class, true, true);
infoFactory.addAttribute("kernel", Kernel.class, false);
- infoFactory.addAttribute("objectName", String.class, false);
+ infoFactory.addAttribute("abstractName", AbstractName.class, false);
infoFactory.addReference("ServerInfo", ServerInfo.class, NameFactory.GERONIMO_SERVICE);
infoFactory.addInterface(KeystoreInstance.class);
- infoFactory.setConstructor(new String[]{"ServerInfo","keystorePath", "keystoreName", "keystorePassword", "keyPasswords", "kernel", "objectName"});
+ infoFactory.setConstructor(new String[]{"ServerInfo","keystorePath", "keystoreName", "keystorePassword", "keyPasswords", "kernel", "abstractName"});
GBEAN_INFO = infoFactory.getBeanInfo();
}
Modified: geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/jmx/KernelDelegate.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/jmx/KernelDelegate.java?rev=396206&r1=396205&r2=396206&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/jmx/KernelDelegate.java (original)
+++ geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/jmx/KernelDelegate.java Sat Apr 22 19:55:45 2006
@@ -545,10 +545,6 @@
return invokeKernel("getAttribute", new Object[]{shortName, type, attributeName}, new String[]{String.class.getName(), Class.class.getName(), String.class.getName()});
}
- public void setAttribute(ObjectName objectName, String attributeName, Object attributeValue) throws Exception {
- invokeKernel("setAttribute", new Object[]{objectName, attributeName, attributeValue}, new String[]{ObjectName.class.getName(), String.class.getName(), Object.class.getName()});
- }
-
public void setAttribute(AbstractName abstractName, String attributeName, Object attributeValue) throws GBeanNotFoundException, NoSuchAttributeException, Exception {
invokeKernel("setAttribute", new Object[]{abstractName, attributeName, attributeValue}, new String[]{AbstractName.class.getName(), String.class.getName(), Object.class.getName()});
}
@@ -748,18 +744,6 @@
public void shutdown() {
try {
invokeKernel("shutdown", new Object[] {}, new String[] {});
- } catch (RuntimeException e) {
- throw e;
- } catch (Exception e) {
- throw new InternalKernelException(e);
- }
- }
-
- public ClassLoader getClassLoaderFor(ObjectName name) throws GBeanNotFoundException {
- try {
- return (ClassLoader) invokeKernel("getClassLoaderFor", new Object[] {name}, new String[] {ObjectName.class.getName()});
- } catch (GBeanNotFoundException e) {
- throw e;
} catch (RuntimeException e) {
throw e;
} catch (Exception e) {