8using NanoXLSX.Interfaces.Writer;
9using NanoXLSX.Registry;
10using NanoXLSX.Utils.Xml;
17 internal static class WriterPlugInHandler
27 internal static void HandleInlineQueuePlugins(ref XmlElement rootElement, Workbook workbook,
string queueUuid,
int? index =
null)
29 IPluginInlineWriter queueWriter =
null;
30 string lastUuid =
null;
34 queueWriter = PlugInLoader.GetNextQueuePlugIn<IPluginInlineWriter>(queueUuid, lastUuid, out currentUuid);
35 if (queueWriter !=
null)
37 queueWriter.Init(ref rootElement, workbook, index);
38 queueWriter.Execute();
39 lastUuid = currentUuid;
46 }
while (queueWriter !=
null);
54 internal static void HandleInlineQueueProcessorPlugins(IWriteContext context,
string queueUuid)
56 IPluginInlineWriteProcessor queueProcessor;
57 string lastUuid =
null;
61 queueProcessor = PlugInLoader.GetNextQueuePlugIn<IPluginInlineWriteProcessor>(queueUuid, lastUuid, out currentUuid);
62 if (queueProcessor !=
null)
64 queueProcessor.Init(context);
65 queueProcessor.Execute();
66 lastUuid = currentUuid;
73 }
while (queueProcessor !=
null);