/** * @Author Paul Bakker - paul.bakker@luminis.eu */ @Alias("forge.spec.jms") public class JmsFacetImpl extends BaseJavaEEFacet implements JMSFacet { @Inject public JmsFacetImpl(DependencyInstaller installer) { super(installer); } @Override protected List<Dependency> getRequiredDependencies() { return Arrays.asList( (Dependency) DependencyBuilder.create("org.jboss.spec.javax.jms:jboss-jms-api_1.1_spec") ); } }
/** * Return the name of the given bean type. */ public static String getName(final Class<?> type) { String result = type.getSimpleName(); if (Annotations.isAnnotationPresent(type, Alias.class)) { Alias annotation = Annotations.getAnnotation(type, Alias.class); if ((annotation.value() != null) && !annotation.value().trim().isEmpty()) { result = annotation.value(); } } return result; }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("forge.spec.jta") public class JTAFacetImpl extends BaseJavaEEFacet implements JTAFacet { @Inject public JTAFacetImpl(final DependencyInstaller installer) { super(installer); } @Override protected List<Dependency> getRequiredDependencies() { return Arrays.asList( (Dependency)DependencyBuilder.create("org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec") ); } }
private String getPluginName(final Class<?> plugin) { String name = null; if (Annotations.isAnnotationPresent(plugin, Alias.class)) { Alias named = Annotations.getAnnotation(plugin, Alias.class); if (named != null) { name = named.value(); } } if ((name == null) || "".equals(name.trim())) { name = plugin.getSimpleName(); } return name.toLowerCase(); } }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("forge.spec.ejb") public class EJBFacetImpl extends BaseJavaEEFacet implements EJBFacet { @Inject public EJBFacetImpl(final DependencyInstaller installer) { super(installer); } @Override protected List<Dependency> getRequiredDependencies() { return Arrays.asList( (Dependency) DependencyBuilder.create("org.jboss.spec.javax.ejb:jboss-ejb-api_3.1_spec") ); } }
@Inject public LessPlugin(@Alias("more") MorePlugin morePlugin) { this.morePlugin = morePlugin; }
@Alias("forge.configuration.facet") public class ConfigurationFacet extends BaseFacet
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> * @author Mike Brock . */ @Alias("git") @Topic("Version Control") public class GitShellPlugin implements Plugin { private final Shell shell; @Inject public GitShellPlugin(final Shell shell) { this.shell = shell; } @DefaultCommand public void run(final PipeOut out, final String... parms) throws IOException { NativeSystemCall.execFromPath("git", parms, out, shell.getCurrentDirectory()); } }
/** * @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") ); } }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> * */ @Help("Un-alias an aliased command. See also 'help alias'") @Alias("unalias") public class UnaliasPlugin implements Plugin { @Inject private AliasRegistry registry; @DefaultCommand public void set(final PipeOut out, @Option(help = "The alias name to remove: E.g: 'mycommand'") final String[] aliases) { if ((aliases != null) && (aliases.length > 0)) { for (String alias : aliases) { registry.removeAlias(alias); } } } }
@Alias("forge.spec.jaxrs.webxml") public class RestWebXmlFacetImpl extends BaseFacet implements RestWebXmlFacet
/** * An aliasing wrapper for {@link MorePlugin} * * @author Mike Brock . */ @Alias("less") @Topic("Shell Environment") public class LessPlugin implements Plugin { private final MorePlugin morePlugin; @Inject public LessPlugin(@Alias("more") MorePlugin morePlugin) { this.morePlugin = morePlugin; } @DefaultCommand public void run(@PipeIn InputStream pipeIn, final Resource<?> file, final PipeOut pipeOut) throws IOException { morePlugin.run(pipeIn, file, true, pipeOut); } }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("jstl") @RequiresProject public class JSTLPlugin implements Plugin { @Inject private Project project; @Inject private Event<InstallFacets> request; @SetupCommand public void setup(final PipeOut out) { if (!project.hasFacet(JSTLFacet.class)) { request.fire(new InstallFacets(JSTLFacet.class)); } if (project.hasFacet(JSTLFacet.class)) { ShellMessages.success(out, "Java Standard Template Library (JSTL) is installed."); } } }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("soap") @RequiresProject public class SoapPlugin implements Plugin { @Inject private Project project; @Inject private Event<InstallFacets> request; @SetupCommand public void setup(final PipeOut out) { if (!project.hasFacet(SoapFacet.class)) { request.fire(new InstallFacets(SoapFacet.class)); } if (project.hasFacet(SoapFacet.class)) { ShellMessages.success(out, "Soap Web Services (JAX-WS) is installed."); } } }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("jta") @RequiresProject public class JTAPlugin implements Plugin { @Inject private Project project; @Inject private Event<InstallFacets> request; @SetupCommand public void setup(final PipeOut out) { if (!project.hasFacet(JTAFacet.class)) { request.fire(new InstallFacets(JTAFacet.class)); } if (project.hasFacet(JTAFacet.class)) { ShellMessages.success(out, "Java Transaction API (JTA) is installed."); } } }
@Alias("run") @Topic("Shell Environment") public class RunPlugin implements Plugin
/** * @author <a href="mailto:rdruss@gmail.com">Rodney Russ</a> */ @Alias("pwr") @Topic("File & Resources") @Help("Prints the current working resource.") public class PwrPlugin implements org.jboss.forge.shell.plugins.Plugin { @Inject private Shell shell; @DefaultCommand public void run() { shell.println(shell.getCurrentResource().getFullyQualifiedName()); } }
/** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ @Alias("clear") @Topic("Shell Environment") @Help("Clears the console output.") public class ClearPlugin implements Plugin { @Inject Shell shell; @DefaultCommand public void run() { shell.clear(); } }