private ImmutableFlow(ImmutableFlow.Builder builder) {
this.scheduler = builder.scheduler;
this.description = builder.description;
this.name = builder.name;
this.id = builder.id;
this.kind = builder.kind;
this.tags = createUnmodifiableSortedSet(false, createSafeList(builder.tags, false, false));
if (builder.connectionsIsSet()) {
initShim.connections(createUnmodifiableList(true, builder.connections));
}
if (builder.stepsIsSet()) {
initShim.steps(createUnmodifiableList(true, builder.steps));
}
if (builder.metadataIsSet()) {
initShim.metadata(createUnmodifiableMap(false, false, builder.metadata));
}
this.connections = initShim.getConnections();
this.steps = initShim.getSteps();
this.metadata = initShim.getMetadata();
this.initShim = null;
}