/** * Creates a {@link ManagedBeanDeploymentMetaData} for the passed <code>classes</code> * * @throws IllegalArgumentException If the passed <code>classes</code> is null or empty */ @Override public ManagedBeanDeploymentMetaData create(Collection<Class<?>> classes) { if (classes == null || classes.isEmpty()) { throw new IllegalArgumentException("Cannot create managed bean deployment metadata out of null or empty classes"); } ManagedBeanDeploymentMetaData managedBeanDeploymentMetaData = new ManagedBeanDeploymentMetaDataImpl(); // pass it through the processor(s) this.processMetaData(classes, managedBeanDeploymentMetaData); // return the processed metadata return managedBeanDeploymentMetaData; }