code: public static WebSphereBeanDeploymentArchive createBDA(WebSphereCDIDeployment deployment,
                                                             ExtensionArchive extensionArchive,
                                                             CDIRuntime cdiRuntime) throws CDIException {
  
          Set<String> additionalClasses = extensionArchive.getExtraClasses();
          Set<String> additionalAnnotations = extensionArchive.getExtraBeanDefiningAnnotations();
          boolean extensionCanSeeApplicationBDAs = extensionArchive.applicationBDAsVisible();
  
          boolean extClassesOnlyBDA = extensionArchive.isExtClassesOnly();
          String archiveID = deployment.getDeploymentID() + "#" + extensionArchive.getName() + ".additionalClasses";
          //this isn't really part of any EE module so we just use the archiveID which should be unique
          EEModuleDescriptor eeModuleDescriptor = new WebSphereEEModuleDescriptor(archiveID, extensionArchive.getType());
  
          WebSphereBeanDeploymentArchive bda = createBDA(deployment,
                                                         archiveID,
                                                         extensionArchive,
                                                         cdiRuntime,
                                                         additionalClasses,
                                                         additionalAnnotations,
                                                         extensionCanSeeApplicationBDAs,
                                                         extClassesOnlyBDA,
                                                         eeModuleDescriptor);
          return bda;
      }
docs: only for extensions