Home » geronimo-2.2-source-release » org.apache.geronimo.concurrent.naming » [javadoc | source]

    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one
    3    * or more contributor license agreements.  See the NOTICE file
    4    * distributed with this work for additional information
    5    * regarding copyright ownership.  The ASF licenses this file
    6    * to you under the Apache License, Version 2.0 (the
    7    * "License"); you may not use this file except in compliance
    8    * with the License.  You may obtain a copy of the License at
    9    *
   10    *  http://www.apache.org/licenses/LICENSE-2.0
   11    *
   12    * Unless required by applicable law or agreed to in writing,
   13    * software distributed under the License is distributed on an
   14    * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
   15    * KIND, either express or implied.  See the License for the
   16    * specific language governing permissions and limitations
   17    * under the License.
   18    */
   19   
   20   package org.apache.geronimo.concurrent.naming;
   21   
   22   import javax.naming.NamingException;
   23   
   24   import org.apache.geronimo.gbean.AbstractName;
   25   import org.apache.xbean.naming.reference.SimpleReference;
   26   
   27   /**
   28    * @version $Rev: 608311 $ $Date: 2008/02/28 21:05:44 $
   29    */
   30   public class ResourceReference extends SimpleReference {
   31       private final ModuleAwareResourceSource source;
   32       private final String type;
   33       private final AbstractName moduleID;
   34   
   35       public ResourceReference(ModuleAwareResourceSource source, String type, AbstractName moduleID) {
   36           this.source = source;
   37           this.type = type;
   38           this.moduleID = moduleID;
   39       }
   40   
   41       public Object getContent() throws NamingException {
   42           try {
   43               return this.source.$getResource(this.moduleID);
   44           } catch (Throwable e) {
   45               throw (NamingException)new NamingException("Could not create resource").initCause(e);
   46           }
   47       }
   48   
   49       @Override
   50       public String getClassName() {
   51           return this.type;
   52       }
   53   }

Home » geronimo-2.2-source-release » org.apache.geronimo.concurrent.naming » [javadoc | source]