301
logger log.Logger,
302
metricsHandler metrics.Handler,
304
>
root := newTreeHelper(registry, timeSource, backend, pathEncoder, logger, metricsHandler)
305
>
306
>
// If serializedNodes is empty, it means that this new tree.
307
>
// Initialize empty serializedNode.
308
>
root.initSerializedNode(fieldTypeComponent)
309
>
// Default to Workflow archetype as empty tree is created for workflow as well.
310
>
root.serializedNode.Metadata.GetComponentAttributes().TypeId = WorkflowArchetypeID
311
>
// Although both value and serializedNode.Data are nil, they are considered NOT synced
312
>
// because value has no type and serializedNode does.
313
>
// deserialize method should set value when called.
314
>
root.setValueState(valueStateNeedDeserialize)
315
>
return root
316
>
}
317
318
func newTreeHelper(