[JBoss JIRA] (FORGE-2690) Commands.shellifyCommandName may add trailing dash
by George Gastaldi (JIRA)
[ https://issues.jboss.org/browse/FORGE-2690?page=com.atlassian.jira.plugin... ]
George Gastaldi commented on FORGE-2690:
----------------------------------------
I have added a special case where {{I/O}} could be changed into simply {{io}}.
The following tests should pass with this change, what do you think?
{code:java}
@Test
public void testShellifyCommandName()
{
Assert.assertEquals("io-jms-activemq", Commands.shellifyCommandName("I/O: JMS (ActiveMQ)"));
Assert.…
[View More]assertEquals("add-remove-something", Commands.shellifyCommandName("Add/Remove (Something)"));
Assert.assertEquals("enable-async-io-jdk8", Commands.shellifyCommandName("Enable Async I/O (JDK8)"));
}
{code}
> Commands.shellifyCommandName may add trailing dash
> --------------------------------------------------
>
> Key: FORGE-2690
> URL: https://issues.jboss.org/browse/FORGE-2690
> Project: Forge
> Issue Type: Bug
> Components: UI - Shell
> Affects Versions: 3.3.2.Final
> Reporter: Claus Ibsen
> Assignee: George Gastaldi
> Priority: Minor
> Fix For: 3.3.3.Final
>
>
> Working on: https://github.com/fabric8io/fabric8-forge/issues/483
> To make the list of dependencies TAB friendly in the CLI then I use this code:
> {code}
> if (builder.getUIContext().getProvider().isGUI()) {
> dependencies.setItemLabelConverter(SpringBootDependencyDTO::getGroupAndName);
> } else {
> // if in CLI mode then use shorter names so they are tab friendly in the shell
> dependencies.setItemLabelConverter(dto -> Commands.shellifyCommandName(dto.getName()));
> }
> {code}
> But some of the names in Spring Boot may use parenthesis such as
> {code}
> I/O: JMS (ActiveMQ)
> I/O: JMS (Artemis)
> I/O: JMS (HornetQ)
> {code}
> And that causes their names in the shellify to end with a dash, notice below
> {code}
> [workspace]$ addon-install --coordinate io.fabric8.forge:devops,2.3-SNAPSHOT
> ***SUCCESS*** Addon io.fabric8.forge:devops,2.3-SNAPSHOT was installed successfully.
> [workspace]$ spring-boot-new-project --dependencies
> Display all 109 possibilities? (y or n)
> cloud-aws-aws-core cloud-discovery-eureka-discovery fabric8-spring-cloud-kubernetes sql-apache-derby
> cloud-aws-aws-jdbc cloud-discovery-eureka-server i-o-activiti sql-h2
> cloud-aws-aws-messaging cloud-discovery-zookeeper-discovery i-o-amqp sql-hsqldb
> cloud-circuit-breaker-hystrix cloud-messaging-cloud-bus-amqp i-o-apache-camel sql-jdbc
> cloud-circuit-breaker-hystrix-dashboard cloud-messaging-cloud-bus-kafka i-o-apache-camel-zipkin sql-jooq
> cloud-circuit-breaker-turbine cloud-messaging-stream-kafka i-o-batch sql-jpa
> cloud-circuit-breaker-turbine-amqp cloud-messaging-stream-rabbit i-o-integration sql-mybatis
> cloud-circuit-breaker-turbine-stream cloud-routing-feign i-o-jms-activemq- sql-mysql
> cloud-cluster-cluster-etcd cloud-routing-ribbon i-o-jms-artemis- sql-postgresql
> cloud-cluster-cluster-hazelcast cloud-routing-zuul i-o-jms-hornetq- template-engines-freemarker
> {code}
> eg
> {code}
> i-o-jms-activemq-
> {code}
> So I think the shellify code should check for ending dash and remove that.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
[View Less]