code: public Deployment deploy(URL url, Context context, ClassLoader parent) throws DeployException
     {
        File archive = (File)context.get(Constants.ATTACHMENT_ARCHIVE);
  
        if (archive == null)
           throw new DeployException("Deployment " + url.toExternalForm() + " not found");
  
        Connector c = (Connector)context.get(Constants.ATTACHMENT_RA_XML_METADATA);
  
        // JCA 1.0 / JCA 1.5
        if (c != null && (Version.V_10.equals(c.getVersion()) || Version.V_15.equals(c.getVersion())))
           return null;
        
        // JCA 1.6 / JCA 1.7 metadata complete
        if (c != null && c.isMetadataComplete())
           return null;
        
        try
        {
           KernelClassLoader cl = (KernelClassLoader)context.get(Constants.ATTACHMENT_CLASSLOADER);
  
           Annotations processor = new Annotations();
           AnnotationScanner scanner = AnnotationScannerFactory.getAnnotationScanner();
           AnnotationRepository repository = scanner.scan(cl.getURLs(), cl);
  
           Connector merged = processor.merge(c, repository, cl);
  
           context.put(Constants.ATTACHMENT_MERGED_METADATA, merged);
  
           return null;
        }
        catch (Throwable t)
        {
           throw new DeployException("Deployment " + url.toExternalForm() + " failed", t);
        }
     }
docs: {@inheritDoc}