Package org.jboss.beans.metadata.plugins.factory

Source Code of org.jboss.beans.metadata.plugins.factory.GenericBeanFactoryMetaData

/*     */ package org.jboss.beans.metadata.plugins.factory;
/*     */
/*     */ import java.util.ArrayList;
/*     */ import java.util.HashSet;
/*     */ import java.util.Iterator;
/*     */ import java.util.Map.Entry;
/*     */ import java.util.Set;
/*     */ import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
/*     */ import org.jboss.beans.metadata.plugins.AbstractConstructorMetaData;
/*     */ import org.jboss.beans.metadata.plugins.AbstractDependencyValueMetaData;
/*     */ import org.jboss.beans.metadata.plugins.AbstractMapMetaData;
/*     */ import org.jboss.beans.metadata.plugins.AbstractParameterMetaData;
/*     */ import org.jboss.beans.metadata.plugins.AbstractPropertyMetaData;
/*     */ import org.jboss.beans.metadata.plugins.AbstractValueMetaData;
/*     */ import org.jboss.beans.metadata.spi.ClassLoaderMetaData;
/*     */ import org.jboss.beans.metadata.spi.ConstructorMetaData;
/*     */ import org.jboss.beans.metadata.spi.LifecycleMetaData;
/*     */ import org.jboss.beans.metadata.spi.PropertyMetaData;
/*     */ import org.jboss.beans.metadata.spi.ValueMetaData;
/*     */ import org.jboss.kernel.spi.config.KernelConfigurator;
/*     */
/*     */ public class GenericBeanFactoryMetaData extends AbstractBeanMetaData
/*     */ {
/*     */   private static final long serialVersionUID = 1L;
/*     */
/*     */   public GenericBeanFactoryMetaData()
/*     */   {
/*  56 */     setBean(GenericBeanFactory.class.getName());
/*  57 */     AbstractConstructorMetaData constructor = new AbstractConstructorMetaData();
/*  58 */     ArrayList parameters = new ArrayList();
/*  59 */     parameters.add(new AbstractParameterMetaData(KernelConfigurator.class.getName(), new AbstractDependencyValueMetaData("jboss.kernel:service=KernelConfigurator")));
/*  60 */     constructor.setParameters(parameters);
/*  61 */     setConstructor(constructor);
/*  62 */     setProperties(new HashSet());
/*     */   }
/*     */
/*     */   public GenericBeanFactoryMetaData(String name)
/*     */   {
/*  72 */     this();
/*  73 */     setName(name);
/*     */   }
/*     */
/*     */   public GenericBeanFactoryMetaData(String name, String bean)
/*     */   {
/*  84 */     this(name);
/*  85 */     setBeanClass(bean);
/*     */   }
/*     */
/*     */   public String getBeanClass()
/*     */   {
/*  95 */     AbstractPropertyMetaData prop = (AbstractPropertyMetaData)getProperty("bean");
/*  96 */     if (prop != null)
/*     */     {
/*  98 */       AbstractValueMetaData value = (AbstractValueMetaData)prop.getValue();
/*  99 */       if (value != null)
/* 100 */         return (String)value.getUnderlyingValue();
/*     */     }
/* 102 */     return null;
/*     */   }
/*     */
/*     */   public void setBeanClass(String beanClass)
/*     */   {
/* 112 */     Set properties = getProperties();
/* 113 */     properties.add(new AbstractPropertyMetaData("bean", new AbstractValueMetaData(beanClass)));
/*     */   }
/*     */
/*     */   public void setClassLoader(ClassLoaderMetaData classLoader)
/*     */   {
/* 118 */     super.setClassLoader(classLoader);
/* 119 */     Set properties = getProperties();
/* 120 */     properties.add(new AbstractPropertyMetaData("classLoader", new AbstractValueMetaData(classLoader)));
/*     */   }
/*     */
/*     */   public void setBeanConstructor(ConstructorMetaData constructor)
/*     */   {
/* 130 */     Set properties = getProperties();
/* 131 */     properties.add(new AbstractPropertyMetaData("constructor", new AbstractValueMetaData(constructor)));
/*     */   }
/*     */
/*     */   public ValueMetaData getBeanProperty(String name)
/*     */   {
/* 142 */     if (name == null)
/* 143 */       throw new IllegalArgumentException("Null name");
/* 144 */     PropertyMetaData properties = getProperty("properties");
/* 145 */     if (properties == null)
/* 146 */       return null;
/* 147 */     AbstractMapMetaData map = (AbstractMapMetaData)properties.getValue();
/* 148 */     for (Iterator i = map.entrySet().iterator(); i.hasNext(); )
/*     */     {
/* 150 */       Map.Entry entry = (Map.Entry)i.next();
/* 151 */       ValueMetaData key = (ValueMetaData)entry.getKey();
/* 152 */       if (key.getUnderlyingValue().equals(name))
/*     */       {
/* 154 */         ValueMetaData vmd = (ValueMetaData)entry.getValue();
/* 155 */         return (ValueMetaData)vmd.getUnderlyingValue();
/*     */       }
/*     */     }
/* 158 */     return null;
/*     */   }
/*     */
/*     */   public void addBeanProperty(PropertyMetaData property)
/*     */   {
/* 168 */     PropertyMetaData properties = getProperty("properties");
/*     */     AbstractMapMetaData map;
/* 171 */     if (properties == null)
/*     */     {
/* 173 */       AbstractMapMetaData map = new AbstractMapMetaData();
/* 174 */       properties = new AbstractPropertyMetaData("properties", map);
/* 175 */       addProperty(properties);
/*     */     }
/*     */     else
/*     */     {
/* 179 */       map = (AbstractMapMetaData)properties.getValue();
/*     */     }
/*     */
/* 182 */     ValueMetaData valueMetaData = property.getValue();
/* 183 */     valueMetaData = new AbstractValueMetaData(valueMetaData);
/* 184 */     map.put(new AbstractValueMetaData(property.getName()), valueMetaData);
/*     */   }
/*     */
/*     */   public void setBeanCreate(LifecycleMetaData lifecycle)
/*     */   {
/* 189 */     Set properties = getProperties();
/* 190 */     properties.add(new AbstractPropertyMetaData("create", new AbstractValueMetaData(lifecycle)));
/*     */   }
/*     */
/*     */   public void setBeanStart(LifecycleMetaData lifecycle)
/*     */   {
/* 195 */     Set properties = getProperties();
/* 196 */     properties.add(new AbstractPropertyMetaData("start", new AbstractValueMetaData(lifecycle)));
/*     */   }
/*     */ }

/* Location:           /home/mnovotny/projects/EMBEDDED_JBOSS_BETA3_COMMUNITY/embedded/output/lib/embedded-jboss/lib/jboss-embedded-all.jar
* Qualified Name:     org.jboss.beans.metadata.plugins.factory.GenericBeanFactoryMetaData
* JD-Core Version:    0.6.0
*/
TOP

Related Classes of org.jboss.beans.metadata.plugins.factory.GenericBeanFactoryMetaData

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.