public Map<String, String> toConfig() {
    HashMap<String, String> configs = new HashMap<>();
    this.factoryClassNameOptional.ifPresent(name -> configs.put(String.format(FACTORY_CONFIG_KEY, systemName), name));
    this.defaultStreamOffsetDefaultOptional.ifPresent(dsod ->
        configs.put(String.format(DEFAULT_STREAM_OFFSET_DEFAULT_CONFIG_KEY, systemName), dsod.name().toLowerCase()));
    this.defaultStreamConfigs.forEach((key, value) ->
        configs.put(String.format(DEFAULT_STREAM_CONFIGS_CONFIG_KEY, getSystemName(), key), value));
    this.systemConfigs.forEach((key, value) ->
        configs.put(String.format(SYSTEM_CONFIGS_CONFIG_KEY, getSystemName(), key), value));
    return configs;
  }
Default properties for any stream obtained using this system descriptor.
<p>
For example, if "systems.kafka-system.default.stream.replication.factor"=2 was configured,
then every Kafka stream created on the kafka-system will have a replication factor of 2
unless the property is explicitly overridden using the stream descriptor.

@param defaultStreamConfigs default stream properties
@return this system descriptor
samza-api/src/main/java/org/apache/samza/system/descriptors/SystemDescriptor.java