All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.oneandone.cdi.weldstarter.WeldSetup Maven / Gradle / Ivy

The newest version!
package com.oneandone.cdi.weldstarter;

import java.util.Collection;
import java.util.List;

import javax.enterprise.inject.spi.DeploymentException;
import javax.enterprise.inject.spi.Extension;

import org.jboss.weld.bootstrap.api.Service;
import org.jboss.weld.bootstrap.api.ServiceRegistry;
import org.jboss.weld.bootstrap.spi.Metadata;

/**
 * Common interface of objects used to start weld by all weld-starters.
 */
public interface WeldSetup {
    class ServiceConfig {
        public ServiceConfig(Class serviceClass, S service) {
            this.serviceClass = serviceClass;
            this.service = service;
        }

        public Class serviceClass;
        public S service;
    }

    Collection getBeanClasses();

    List> getAlternativeClasses();

    List> getEnabledAlternativeStereotypes();

    List> getEnabledDecorators();

    List getServices();

    List> getEnabledInterceptors();

    void setDeploymentException(DeploymentException deploymentException);

    Iterable> getExtensions();

    void registerServices(ServiceRegistry serviceRegistry);

}