@RequiresFacet({ DependencyFacet.class }) public abstract class BaseJavaEEFacet extends BaseFacet
/** * Inspect the given {@link Class} for any dependencies to {@link Facet} types. */ public static List<Class<? extends Facet>> getFacetDependencies(final Class<?> type) { List<Class<? extends Facet>> result = new ArrayList<Class<? extends Facet>>(); if (Annotations.isAnnotationPresent(type, RequiresFacet.class)) { RequiresFacet requires = Annotations.getAnnotation(type, RequiresFacet.class); if (requires.value() != null) { result.addAll(Arrays.asList(requires.value())); } } return result; }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("forge.spec.jstl") @RequiresFacet(ServletFacet.class) public class JSTLFacetImpl extends BaseJavaEEFacet implements JSTLFacet { @Inject public JSTLFacetImpl(final DependencyInstaller installer) { super(installer); } @Override protected List<Dependency> getRequiredDependencies() { return Arrays .asList((Dependency) DependencyBuilder .create("org.jboss.spec.javax.servlet.jstl:jboss-jstl-api_1.2_spec")); } }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("forge.spec.jaxws") @RequiresFacet(ServletFacet.class) public class SoapFacetImpl extends BaseJavaEEFacet implements SoapFacet { @Inject public SoapFacetImpl(final DependencyInstaller installer) { super(installer); } @Override protected List<Dependency> getRequiredDependencies() { return Arrays.asList( (Dependency) DependencyBuilder.create("org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.2_spec"), (Dependency) DependencyBuilder.create("org.jboss.spec.javax.xml.rpc:jboss-jaxrpc-api_1.1_spec"), (Dependency) DependencyBuilder.create("org.jboss.spec.javax.xml.soap:jboss-saaj-api_1.3_spec"), (Dependency) DependencyBuilder.create("org.jboss.spec.javax.xml.ws:jboss-jaxws-api_2.2_spec") ); } }
@RequiresFacet(ServletFacet.class) public class FacesAPIFacetImpl extends FacesFacetImpl implements FacesAPIFacet
/** * @Author Paul Bakker - paul.bakker@luminis.eu */ @Alias("jms") @RequiresProject @RequiresFacet(DependencyFacet.class) public class JmsPlugin implements Plugin { @Inject private Project project; @Inject private Event<InstallFacets> request; @SetupCommand public void setup(final PipeOut out) { if (!project.hasFacet(JMSFacet.class)) { request.fire(new InstallFacets(JMSFacet.class)); } if (project.hasFacet(JMSFacet.class)) { ShellMessages.success(out, "JMS is installed."); } } }
@RequiresFacet({ ResourceFacet.class, DependencyFacet.class }) public class ValidationFacetImpl extends BaseJavaEEFacet implements ValidationFacet
/** * Forge facet for Common Component functionality. */ @Alias("switchyard.common") @RequiresFacet({ DependencyFacet.class, PackagingFacet.class, SwitchYardFacet.class }) @RequiresPackagingType(PackagingType.JAR) public class CommonFacet extends AbstractFacet { private static final String COMMON_MAVEN_ID = "org.switchyard.components:switchyard-component-common"; @Override public boolean install() { installDependencies(); return true; } /** * Create a new Common Facet. */ public CommonFacet() { super(COMMON_MAVEN_ID); } }
@Dependent @Alias("forge.maven.scaffold.TemplateFacet") @RequiresFacet(MavenCoreFacet.class) public class MavenScaffoldTemplateFacet extends BaseFacet implements ScaffoldTemplateFacet, Facet
@RequiresFacet(ServletFacet.class) public class RestFacetImpl extends BaseJavaEEFacet implements RestFacet
@RequiresFacet({ ResourceFacet.class, PackagingFacet.class }) public class CDIFacetImpl extends BaseJavaEEFacet implements CDIFacet
@RequiresFacet({ DependencyFacet.class, PackagingFacet.class, CDIFacet.class, ResourceFacet.class }) @RequiresPackagingType(PackagingType.JAR) public class ForgeAPIFacet extends BaseFacet
@RequiresFacet(JavaSourceFacet.class) public class RestApplicationFacetImpl extends BaseFacet implements RestApplicationFacet
@Alias("forge.spec.jpa.metamodel") @RequiresFacet({ PersistenceFacet.class, MavenPluginFacet.class }) public class PersistenceMetaModelFacetImpl extends BaseFacet implements PersistenceMetaModelFacet
@RequiresFacet({ DependencyFacet.class, PackagingFacet.class, SwitchYardFacet.class}) @RequiresPackagingType(PackagingType.JAR) public class BeanFacet extends AbstractFacet {
@Help("Set up necessary features for Forge plugin development") @RequiresProject @RequiresFacet(ForgeAPIFacet.class) public class PluginsPlugin implements Plugin
@RequiresFacet(FacesFacet.class) @RequiresProject public class FacesPlugin implements Plugin
/** * @author Mike Brock . * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("mvn") @Topic("Project") @RequiresProject @RequiresFacet(MavenCoreFacet.class) public class MvnShellPlugin implements Plugin { private final Project project; @Inject public MvnShellPlugin(final Project project) { this.project = project; } @DefaultCommand public void run(final PipeOut out, final String... parms) { project.getFacet(MavenCoreFacet.class).executeMaven(out, parms); } }
@RequiresFacet(JavaSourceFacet.class) @RequiresProject public class PersistencePlugin implements Plugin
@RequiresFacet(ServletFacet.class) public class FacesFacetImpl extends BaseJavaEEFacet implements FacesFacet