public Element toElement(KafkaDatastore datastore) { final Element ds = getDocument().createElement("kafka-datastore"); ds.setAttribute("name", datastore.getName()); if (!Strings.isNullOrEmpty(datastore.getDescription())) { ds.setAttribute("description", datastore.getDescription()); } appendElement(ds, "bootstrap-servers", datastore.getBootstrapServers()); for (String topic : datastore.getTopics()) { appendElement(ds, "topic", topic); } appendElement(ds, "key-type", datastore.getKeyType().name()); appendElement(ds, "value-type", datastore.getValueType().name()); return ds; }
private DCComboBox<KeyValueType> createKeyValueTypeCombo() { final DCComboBox<KeyValueType> c = new DCComboBox<>(KafkaDatastore.KeyValueType.values()); c.setRenderer(new EnumComboBoxListRenderer()); c.setSelectedItem(KafkaDatastore.KeyValueType.STRING); return c; }
@Override @SuppressWarnings({ "rawtypes", "unchecked" }) protected UsageAwareDatastoreConnection<KafkaDataContext<?, ?>> createDatastoreConnection() { final KafkaDataContext dataContext = new KafkaDataContext(keyType.asClass(), valueType.asClass(), bootstrapServers, topics); return new DatastoreConnectionImpl(dataContext, this); }
private Datastore createDatastore(final String name, final KafkaDatastoreType kafkaDatastoreType) { final String bootstrapServers = kafkaDatastoreType.getBootstrapServers(); final Collection<String> topics = kafkaDatastoreType.getTopic(); final KeyValueType keyType = KeyValueType.valueOf(kafkaDatastoreType.getKeyType()); final KeyValueType valueType = KeyValueType.valueOf(kafkaDatastoreType.getValueType()); return new KafkaDatastore(name, bootstrapServers, topics, keyType, valueType); }