costin      2003/03/20 07:57:40

  Modified:    catalina/src/share/org/apache/catalina/realm RealmBase.java
  Log:
  Simplify ( refactored common operations )
  
  Start work on unregistration.
  
  Revision  Changes    Path
  1.8       +18 -29    
jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/realm/RealmBase.java
  
  Index: RealmBase.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/realm/RealmBase.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- RealmBase.java    17 Mar 2003 19:24:13 -0000      1.7
  +++ RealmBase.java    20 Mar 2003 15:57:39 -0000      1.8
  @@ -81,10 +81,6 @@
   import javax.management.ObjectName;
   import javax.management.MBeanServer;
   import javax.management.MBeanRegistration;
  -import javax.management.InstanceNotFoundException;
  -import javax.management.MBeanException;
  -import javax.management.ReflectionException;
  -import javax.management.MalformedObjectNameException;
   
   import org.apache.catalina.Container;
   import org.apache.catalina.Context;
  @@ -98,6 +94,7 @@
   import org.apache.catalina.core.StandardEngine;
   import org.apache.catalina.core.StandardHost;
   import org.apache.catalina.core.StandardContext;
  +import org.apache.catalina.core.ContainerBase;
   
   import org.apache.catalina.deploy.LoginConfig;
   import org.apache.catalina.deploy.SecurityConstraint;
  @@ -995,8 +992,17 @@
       protected String host;
       protected String path;
       protected ObjectName oname;
  +    protected ObjectName controller;
       protected MBeanServer mserver;
   
  +    public ObjectName getController() {
  +        return controller;
  +    }
  +
  +    public void setController(ObjectName controller) {
  +        this.controller = controller;
  +    }
  +
       public ObjectName getObjectName() {
           return oname;
       }
  @@ -1040,22 +1046,17 @@
           if( container== null ) {
               // Register with the parent
               try {
  -                Set names=null;
  +                ObjectName parent=null;
                   if( host == null ) {
                       // global
  -                    names=mserver.queryNames(new ObjectName(domain 
+":type=Engine,*"), null);
  +                    parent=new ObjectName(domain +":type=Engine");
                   } else if( path==null ) {
  -                    names=mserver.queryNames(new ObjectName(domain +
  -                            ":type=Host,host=" + host +",*"), null);
  +                    parent=new ObjectName(domain +
  +                            ":type=Host,host=" + host);
                   } else {
  -                    names=mserver.queryNames(new ObjectName(domain 
+":j2eeType=WebModule,name=//" +
  -                            host + "/" + path + ",*"), null);
  -                }
  -                if( names.size() == 0 ) {
  -                    log.error("Can't register, no object found " + oname );
  -                    return;
  +                    parent=new ObjectName(domain +":j2eeType=WebModule,name=//" +
  +                            host + "/" + path);
                   }
  -                ObjectName parent=(ObjectName)names.iterator().next();
                   log.info("Register with " + parent);
                   mserver.invoke(parent, "setRealm", new Object[] {this},
                           new String[] {"org.apache.catalina.Realm"});
  @@ -1067,21 +1068,9 @@
           if( oname==null ) {
               // register
               try {
  -                StandardEngine engine=null;            
  -                String suffix="";
  -                if( container instanceof StandardEngine ) {
  -                    engine=(StandardEngine)container;                
  -                } else if( container instanceof StandardHost ) {
  -                    engine=(StandardEngine)container.getParent();
  -                    suffix=",host=" + container.getName();
  -                } else if( container instanceof StandardContext ) {
  -                    engine=(StandardEngine)container.getParent().getParent();
  -                    suffix=",host=" + container.getParent().getName() + 
  -                            ",path=" + ((StandardContext)container).getPath();
  -                }
  -                oname=new ObjectName(engine.getDomain()+ ":type=Realm" + suffix);
  +                ContainerBase cb=(ContainerBase)container;
  +                oname=new ObjectName(cb.getDomain()+":type=Realm" + 
cb.getContainerSuffix());
                   Registry.getRegistry().registerComponent(this, oname, null );
  -                
               } catch (Throwable e) {
                   e.printStackTrace();  //To change body of catch statement use 
Options | File Templates.
               }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to