@Override public void perform(Arguments arguments, PrintStream output) throws Exception { StreamId streamId = cliConfig.getCurrentNamespace().stream(arguments.get(ArgumentName.STREAM.toString())); StreamViewId view = streamId.view(arguments.get(ArgumentName.VIEW.toString())); client.delete(view); output.printf("Successfully deleted stream-view '%s'\n", view.getEntityName()); }
@Override public void perform(Arguments arguments, PrintStream output) throws Exception { StreamId streamId = cliConfig.getCurrentNamespace().stream(arguments.get(ArgumentName.STREAM.toString())); StreamViewId viewId = streamId.view(arguments.get(ArgumentName.VIEW.toString())); String formatName = arguments.get(ArgumentName.FORMAT.toString()); Schema schema = getSchema(arguments); Map<String, String> settings = Collections.emptyMap(); if (arguments.hasArgument(ArgumentName.SETTINGS.toString())) { settings = ArgumentParser.parseMap(arguments.get(ArgumentName.SETTINGS.toString()), ArgumentName.SETTINGS.toString()); } FormatSpecification formatSpecification = new FormatSpecification(formatName, schema, settings); ViewSpecification viewSpecification = new ViewSpecification(formatSpecification); boolean created = client.createOrUpdate(viewId, viewSpecification); if (created) { output.printf("Successfully created stream-view '%s'\n", viewId.getEntityName()); } else { output.printf("Successfully updated stream-view '%s'\n", viewId.getEntityName()); } }
@Override public void perform(Arguments arguments, PrintStream output) throws Exception { StreamId streamId = cliConfig.getCurrentNamespace().stream(arguments.get(ArgumentName.STREAM.toString())); ViewDetail detail = client.get(streamId.view(arguments.get(ArgumentName.VIEW.toString()))); Table table = Table.builder() .setHeader("id", "format", "table", "schema", "settings") .setRows(Collections.singletonList(detail), new RowMaker<ViewDetail>() { @Override public List<?> makeRow(ViewDetail object) { return Lists.newArrayList(object.getId(), object.getFormat().getName(), object.getTableName(), GSON.toJson(object.getFormat().getSchema()), GSON.toJson(object.getFormat().getSettings())); } }).build(); cliConfig.getTableRenderer().render(cliConfig, output, table); }