internal UniqueDocumentInfo MakeUnique(IUniqueNameManager manager, DocumentFlags?defaultFlags) { var info = this; if (!info.Flags.HasValue && defaultFlags.HasValue) { info.Flags = defaultFlags; } if (uniqueId < 1) { uniqueId = Interlocked.Increment(ref lastUniqueId).ToUnsigned(); } var uniqueName = manager.GetUniqueName(Name, Category.DefaultName); if (info.Flags.GetValueOrDefault().HasFlag(DocumentFlags.IsTransient)) { uniqueName += " [temp]"; } return(new UniqueDocumentInfo(info, uniqueId, uniqueName)); }
internal UniqueDocumentInfo MakeUnique(IUniqueNameManager manager) { return(MakeUnique(manager, null)); }