Package org.jboss.ejb3.clientmodule

Source Code of org.jboss.ejb3.clientmodule.EnvironmentRefGroupConveter

/*     */ package org.jboss.ejb3.clientmodule;
/*     */
/*     */ import java.util.Collection;
/*     */ import java.util.HashMap;
/*     */ import java.util.Iterator;
/*     */ import java.util.List;
/*     */ import java.util.Set;
/*     */ import org.jboss.logging.Logger;
/*     */ import org.jboss.metadata.javaee.spec.EJBReferenceMetaData;
/*     */ import org.jboss.metadata.javaee.spec.EJBReferencesMetaData;
/*     */ import org.jboss.metadata.javaee.spec.Environment;
/*     */ import org.jboss.metadata.javaee.spec.EnvironmentEntriesMetaData;
/*     */ import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
/*     */ import org.jboss.metadata.javaee.spec.MessageDestinationReferenceMetaData;
/*     */ import org.jboss.metadata.javaee.spec.MessageDestinationReferencesMetaData;
/*     */ import org.jboss.metadata.javaee.spec.MessageDestinationUsageType;
/*     */ import org.jboss.metadata.javaee.spec.ResourceAuthorityType;
/*     */ import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
/*     */ import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferencesMetaData;
/*     */ import org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData;
/*     */ import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
/*     */ import org.jboss.metadata.javaee.spec.ResourceReferencesMetaData;
/*     */ import org.jboss.metamodel.descriptor.EjbLocalRef;
/*     */ import org.jboss.metamodel.descriptor.EjbRef;
/*     */ import org.jboss.metamodel.descriptor.EnvEntry;
/*     */ import org.jboss.metamodel.descriptor.EnvironmentRefGroup;
/*     */ import org.jboss.metamodel.descriptor.InjectionTarget;
/*     */ import org.jboss.metamodel.descriptor.JndiRef;
/*     */ import org.jboss.metamodel.descriptor.MessageDestinationRef;
/*     */ import org.jboss.metamodel.descriptor.PersistenceContextRef;
/*     */ import org.jboss.metamodel.descriptor.PersistenceUnitRef;
/*     */ import org.jboss.metamodel.descriptor.ResourceEnvRef;
/*     */ import org.jboss.metamodel.descriptor.ResourceRef;
/*     */ import org.jboss.wsf.spi.serviceref.ServiceRefMetaData;
/*     */
/*     */ public class EnvironmentRefGroupConveter extends EnvironmentRefGroup
/*     */ {
/*  64 */   private static final Logger log = Logger.getLogger(EnvironmentRefGroupConveter.class);
/*     */   private Environment refs;
/*     */   private boolean convertedEjbLocalRefs;
/*  67 */   private boolean convertedEjbRefs = false;
/*  68 */   private boolean convertedEnvEntries = false;
/*  69 */   private boolean convertedMessageDestinationRefs = false;
/*  70 */   private boolean convertedResourceEnvRefs = false;
/*  71 */   private boolean convertedResourceRefs = false;
/*  72 */   private boolean convertedServiceRefs = false;
/*     */
/*     */   public EnvironmentRefGroupConveter(Environment refs)
/*     */   {
/*  76 */     this.refs = refs;
/*     */   }
/*     */
/*     */   public Collection<EjbLocalRef> getEjbLocalRefs()
/*     */   {
/*  82 */     if (!this.convertedEjbLocalRefs)
/*     */     {
/*  84 */       this.convertedEjbLocalRefs = true;
/*     */     }
/*  86 */     return super.getEjbLocalRefs();
/*     */   }
/*     */
/*     */   public Collection<EjbRef> getEjbRefs()
/*     */   {
/*  92 */     if (!this.convertedEjbRefs)
/*     */     {
/*  94 */       EJBReferencesMetaData erefs = this.refs.getEjbReferences();
/*  95 */       if (erefs != null)
/*  96 */         for (EJBReferenceMetaData ref : erefs)
/*     */         {
/*  98 */           EjbRef eref = new EjbRef();
/*  99 */           eref.setEjbLink(ref.getLink());
/* 100 */           eref.setEjbRefName(ref.getEjbRefName());
/* 101 */           eref.setEjbRefType(ref.getType());
/* 102 */           eref.setHome(ref.getHome());
/* 103 */           eref.setRemote(ref.getRemote());
/* 104 */           eref.setIgnoreDependency(ref.isDependencyIgnored());
/* 105 */           eref.setMappedName(ref.getMappedName());
/* 106 */           eref.setInjectionTarget(getInjectionTarget(ref.getInjectionTargets()));
/* 107 */           this.ejbRefs.put(ref.getEjbRefName(), eref);
/*     */         }
/* 109 */       log.info("Converted " + this.ejbRefs.size() + " refs: " + this.ejbRefs.keySet());
/* 110 */       this.convertedEjbRefs = true;
/*     */     }
/* 112 */     return super.getEjbRefs();
/*     */   }
/*     */
/*     */   public Collection<EnvEntry> getEnvEntries()
/*     */   {
/* 118 */     if (!this.convertedEnvEntries)
/*     */     {
/* 120 */       EnvironmentEntriesMetaData env = this.refs.getEnvironmentEntries();
/* 121 */       if (env != null)
/*     */       {
/* 123 */         for (EnvironmentEntryMetaData entry : env)
/*     */         {
/* 125 */           EnvEntry ee = new EnvEntry();
/* 126 */           ee.setEnvEntryName(entry.getEnvEntryName());
/* 127 */           ee.setEnvEntryType(entry.getType());
/* 128 */           ee.setEnvEntryValue(entry.getValue());
/* 129 */           Set rits = entry.getInjectionTargets();
/* 130 */           if ((rits != null) && (!rits.isEmpty()))
/*     */           {
/* 132 */             ResourceInjectionTargetMetaData rit = (ResourceInjectionTargetMetaData)rits.iterator().next();
/* 133 */             InjectionTarget it = new InjectionTarget();
/* 134 */             it.setTargetClass(rit.getInjectionTargetClass());
/* 135 */             it.setTargetName(rit.getInjectionTargetName());
/* 136 */             ee.setInjectionTarget(it);
/*     */           }
/* 138 */           ee.setIgnoreDependency(entry.isDependencyIgnored());
/* 139 */           this.envEntries.put(ee.getEnvEntryName(), ee);
/*     */         }
/* 141 */         log.info("Converted " + this.envEntries.size() + " envs: " + this.envEntries.keySet());
/*     */       }
/* 143 */       this.convertedEnvEntries = true;
/*     */     }
/* 145 */     return super.getEnvEntries();
/*     */   }
/*     */
/*     */   public Collection<JndiRef> getJndiRefs()
/*     */   {
/* 151 */     return super.getJndiRefs();
/*     */   }
/*     */
/*     */   public MessageDestinationRef getMessageDestinationRefForLink(String link)
/*     */   {
/* 157 */     if (!this.convertedMessageDestinationRefs)
/* 158 */       getMessageDestinationRefs();
/* 159 */     return super.getMessageDestinationRefForLink(link);
/*     */   }
/*     */
/*     */   public Collection<MessageDestinationRef> getMessageDestinationRefs()
/*     */   {
/* 165 */     if (!this.convertedMessageDestinationRefs)
/*     */     {
/* 167 */       MessageDestinationReferencesMetaData mrefs = this.refs.getMessageDestinationReferences();
/* 168 */       if (mrefs != null)
/* 169 */         for (MessageDestinationReferenceMetaData mref : mrefs)
/*     */         {
/* 171 */           MessageDestinationRef ref = new MessageDestinationRef();
/* 172 */           ref.setIgnoreDependency(mref.isDependencyIgnored());
/* 173 */           ref.setMappedName(mref.getMappedName());
/* 174 */           ref.setJndiName(mref.getMappedName());
/* 175 */           ref.setMessageDestinationLink(mref.getLink());
/* 176 */           ref.setMessageDestinationRefName(mref.getMessageDestinationRefName());
/* 177 */           ref.setMessageDestinationType(mref.getType());
/* 178 */           MessageDestinationUsageType usage = mref.getMessageDestinationUsage();
/* 179 */           if (usage != null)
/* 180 */             ref.setMessageDestinationUsage(usage.name());
/* 181 */           this.messageDestinationRefs.put(ref.getMessageDestinationRefName(), ref);
/*     */         }
/* 183 */       log.info("Converted " + this.messageDestinationRefs.size() + " msgRefs: " + this.messageDestinationRefs.keySet());
/* 184 */       this.convertedMessageDestinationRefs = true;
/*     */     }
/* 186 */     return super.getMessageDestinationRefs();
/*     */   }
/*     */
/*     */   public List<PersistenceContextRef> getPersistenceContextRefs()
/*     */   {
/* 193 */     return super.getPersistenceContextRefs();
/*     */   }
/*     */
/*     */   public List<PersistenceUnitRef> getPersistenceUnitRefs()
/*     */   {
/* 200 */     return super.getPersistenceUnitRefs();
/*     */   }
/*     */
/*     */   public Collection<ResourceEnvRef> getResourceEnvRefs()
/*     */   {
/* 206 */     if (!this.convertedResourceEnvRefs)
/*     */     {
/* 208 */       ResourceEnvironmentReferencesMetaData rrefs = this.refs.getResourceEnvironmentReferences();
/* 209 */       if (rrefs != null)
/* 210 */         for (ResourceEnvironmentReferenceMetaData rref : rrefs)
/*     */         {
/* 212 */           ResourceEnvRef ref = new ResourceEnvRef();
/* 213 */           ref.setResRefName(rref.getResourceEnvRefName());
/* 214 */           ref.setIgnoreDependency(ref.isIgnoreDependency());
/* 215 */           ref.setResType(rref.getType());
/* 216 */           ref.setJndiName(rref.getJndiName());
/* 217 */           ref.setMappedName(rref.getMappedName());
/* 218 */           ref.setResAuth("Container");
/* 219 */           ref.setInjectionTarget(getInjectionTarget(rref.getInjectionTargets()));
/* 220 */           this.resourceEnvRefs.put(ref.getResRefName(), ref);
/*     */         }
/* 222 */       log.info("Converted " + this.resourceEnvRefs.size() + " envRefs: " + this.resourceEnvRefs.keySet());
/* 223 */       this.convertedResourceEnvRefs = true;
/*     */     }
/* 225 */     return super.getResourceEnvRefs();
/*     */   }
/*     */
/*     */   public Collection<ResourceRef> getResourceRefs()
/*     */   {
/* 231 */     if (!this.convertedResourceRefs)
/*     */     {
/* 233 */       ResourceReferencesMetaData rrefs = this.refs.getResourceReferences();
/* 234 */       if (rrefs != null)
/* 235 */         for (ResourceReferenceMetaData rref : rrefs)
/*     */         {
/* 237 */           ResourceRef ref = new ResourceRef();
/* 238 */           ref.setResRefName(rref.getResourceRefName());
/* 239 */           ref.setIgnoreDependency(ref.isIgnoreDependency());
/* 240 */           ref.setResType(rref.getType());
/* 241 */           ref.setJndiName(rref.getJndiName());
/* 242 */           ref.setMappedName(rref.getMappedName());
/* 243 */           ref.setResUrl(rref.getResUrl());
/* 244 */           ResourceAuthorityType authType = rref.getResAuth();
/* 245 */           if (authType != null)
/* 246 */             ref.setResAuth(authType.name());
/* 247 */           ref.setInjectionTarget(getInjectionTarget(rref.getInjectionTargets()));
/* 248 */           this.resourceRefs.put(ref.getResRefName(), ref);
/*     */         }
/* 250 */       log.info("Converted " + this.resourceRefs.size() + " resRefs: " + this.resourceRefs.keySet());
/* 251 */       this.convertedResourceRefs = true;
/*     */     }
/* 253 */     return super.getResourceRefs();
/*     */   }
/*     */
/*     */   public ServiceRefMetaData getServiceRef(String name)
/*     */   {
/* 259 */     if (!this.convertedServiceRefs)
/* 260 */       getServiceRefs();
/* 261 */     return super.getServiceRef(name);
/*     */   }
/*     */
/*     */   public Collection<ServiceRefMetaData> getServiceRefs()
/*     */   {
/* 267 */     if (!this.convertedServiceRefs)
/*     */     {
/* 269 */       this.convertedServiceRefs = true;
/*     */     }
/* 271 */     return super.getServiceRefs();
/*     */   }
/*     */
/*     */   private InjectionTarget getInjectionTarget(Set<ResourceInjectionTargetMetaData> rits)
/*     */   {
/* 276 */     InjectionTarget it = null;
/* 277 */     if ((rits != null) && (!rits.isEmpty()))
/*     */     {
/* 279 */       ResourceInjectionTargetMetaData rit = (ResourceInjectionTargetMetaData)rits.iterator().next();
/* 280 */       it = new InjectionTarget();
/* 281 */       it.setTargetClass(rit.getInjectionTargetClass());
/* 282 */       it.setTargetName(rit.getInjectionTargetName());
/*     */     }
/* 284 */     return it;
/*     */   }
/*     */ }

/* Location:           /home/mnovotny/projects/EMBEDDED_JBOSS_BETA3_COMMUNITY/embedded/output/lib/embedded-jboss/lib/jboss-embedded-all.jar
* Qualified Name:     org.jboss.ejb3.clientmodule.EnvironmentRefGroupConveter
* JD-Core Version:    0.6.0
*/
TOP

Related Classes of org.jboss.ejb3.clientmodule.EnvironmentRefGroupConveter

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.