diff --git a/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandBase.java b/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandBase.java index 96b645c8..0fe3c6cc 100644 --- a/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandBase.java +++ b/commands/src/main/java/org/jclouds/karaf/commands/compute/ComputeCommandBase.java @@ -24,7 +24,6 @@ import java.util.HashSet; import java.util.Iterator; import java.util.List; -import java.util.Map; import java.util.Set; import org.apache.felix.service.command.CommandSession; @@ -40,9 +39,9 @@ import org.jclouds.domain.Location; import org.jclouds.karaf.cache.BasicCacheProvider; import org.jclouds.karaf.cache.CacheProvider; -import org.jclouds.karaf.commands.table.internal.PropertyShellTableFactory; import org.jclouds.karaf.commands.table.ShellTable; import org.jclouds.karaf.commands.table.ShellTableFactory; +import org.jclouds.karaf.commands.table.internal.PropertyShellTableFactory; import org.jclouds.karaf.core.Constants; import org.jclouds.karaf.utils.ServiceHelper; import org.jclouds.providers.ProviderMetadata; @@ -63,7 +62,7 @@ public abstract class ComputeCommandBase extends AbstractAction { protected ConfigurationAdmin configAdmin; protected CacheProvider cacheProvider = new BasicCacheProvider(); protected List computeServices = new ArrayList(); - protected ShellTableFactory shellTableFactory = new PropertyShellTableFactory(); + protected ShellTableFactory shellTableFactory; @Override public Object execute(CommandSession session) throws Exception { @@ -75,6 +74,12 @@ public Object execute(CommandSession session) throws Exception { return null; } } + + private void initShellTableFactory(){ + if (shellTableFactory == null){ + shellTableFactory = new PropertyShellTableFactory(); + } + } protected void printComputeProviders(Iterable providers, List computeServices, String indent, PrintStream out) { @@ -111,6 +116,7 @@ protected void printComputeApis(Iterable apis, List } protected void printNodes(ComputeService service, Set nodes, PrintStream out) { + initShellTableFactory(); ShellTable table = shellTableFactory.build("node"); table.setDisplayData(nodes); table.display(out, true, true); @@ -124,7 +130,8 @@ protected void printNodes(ComputeService service, Set } protected void printHardwares(ComputeService service, Set hardwares, PrintStream out) { - ShellTable table = shellTableFactory.build("hardware"); + initShellTableFactory(); + ShellTable table = shellTableFactory.build("hardware"); table.setDisplayData(hardwares); table.display(out, true, true); @@ -136,6 +143,7 @@ protected void printHardwares(ComputeService service, Set ha } protected void printImages(ComputeService service, Set images, PrintStream out) { + initShellTableFactory(); ShellTable table = shellTableFactory.build("image"); table.setDisplayData(images); table.display(out, true, true); @@ -148,6 +156,7 @@ protected void printImages(ComputeService service, Set images, } protected void printLocations(ComputeService computeService, PrintStream out) { + initShellTableFactory(); ShellTable table = shellTableFactory.build("location"); table.setDisplayData(getAllLocations(computeService)); table.display(out, true, true); diff --git a/commands/src/main/java/org/jclouds/karaf/commands/compute/HardwareListCommand.java b/commands/src/main/java/org/jclouds/karaf/commands/compute/HardwareListCommand.java index ab50dd03..3b125dab 100644 --- a/commands/src/main/java/org/jclouds/karaf/commands/compute/HardwareListCommand.java +++ b/commands/src/main/java/org/jclouds/karaf/commands/compute/HardwareListCommand.java @@ -35,6 +35,7 @@ protected Object doExecute() throws Exception { System.err.println(t.getMessage()); return null; } + printHardwares(service, service.listHardwareProfiles(), System.out); return null; } diff --git a/commands/src/main/java/org/jclouds/karaf/commands/compute/ImageListCommand.java b/commands/src/main/java/org/jclouds/karaf/commands/compute/ImageListCommand.java index 155bd2b4..4ee264a0 100644 --- a/commands/src/main/java/org/jclouds/karaf/commands/compute/ImageListCommand.java +++ b/commands/src/main/java/org/jclouds/karaf/commands/compute/ImageListCommand.java @@ -19,11 +19,6 @@ import org.apache.felix.gogo.commands.Command; import org.jclouds.compute.ComputeService; -import org.jclouds.compute.domain.Image; -import org.jclouds.karaf.commands.table.ShellTable; - -import java.util.ArrayList; -import java.util.Arrays; /** * @author Guillaume Nodet (gnodet) @@ -40,7 +35,8 @@ protected Object doExecute() throws Exception { System.err.println(t.getMessage()); return null; } - printImages(service, service.listImages(), System.out); + + printImages(service, service.listImages(), System.out); return null; } diff --git a/commands/src/main/java/org/jclouds/karaf/commands/compute/LocationListCommand.java b/commands/src/main/java/org/jclouds/karaf/commands/compute/LocationListCommand.java index bfbc0b6f..c222675b 100644 --- a/commands/src/main/java/org/jclouds/karaf/commands/compute/LocationListCommand.java +++ b/commands/src/main/java/org/jclouds/karaf/commands/compute/LocationListCommand.java @@ -35,6 +35,7 @@ protected Object doExecute() throws Exception { System.err.println(t.getMessage()); return null; } + printLocations(service, System.out); return null; } diff --git a/commands/src/main/java/org/jclouds/karaf/commands/compute/NodeListCommand.java b/commands/src/main/java/org/jclouds/karaf/commands/compute/NodeListCommand.java index c012ed53..af67f149 100644 --- a/commands/src/main/java/org/jclouds/karaf/commands/compute/NodeListCommand.java +++ b/commands/src/main/java/org/jclouds/karaf/commands/compute/NodeListCommand.java @@ -59,6 +59,7 @@ public boolean apply(@Nullable ComputeMetadata input) { return true; } }); + printNodes(service, nodes, System.out); for (ComputeMetadata node : service.listNodes()) {