public <T> T execute(Command<T> command) {
Environment environment;
if (command instanceof AbstractCommand) {
AbstractCommand abstractCommand = (AbstractCommand) command;
List<WireObject> txWireObjects = abstractCommand.getTxWireObjects();
environment = environmentFactory.openEnvironment(txWireObjects);
} else {
environment = environmentFactory.openEnvironment();
}