public static IXMindWriter CreateWriterFactoryMethod(FileWriterStandardOutput standardOutputType) { var xMindSettings = XMindConfigurationCache.Configuration.XMindConfigCollection; IXMindWriter result; switch (standardOutputType) { case FileWriterStandardOutput.Manifest: result = new FileWriter().SetOutput(new FileWriterOutputConfig(xMindSettings["output:definition:manifest"], true)); break; case FileWriterStandardOutput.Meta: result = new FileWriter().SetOutput(new FileWriterOutputConfig(xMindSettings["output:definition:meta"], true));; break; case FileWriterStandardOutput.Content: result = new FileWriter().SetOutput(new FileWriterOutputConfig(xMindSettings["output:definition:content"], true));; break; default: result = null; break; } if (result == null) { throw new InvalidOperationException("CreateWriterFactoryMethod haven't assigned writer"); } return(result); }
public static IXMindWriter CreateStandardWriterFactoryMethod( FileWriterStandardOutput standardOutputType, string basePath) { var xMindSettings = XMindConfigurationLoader.Configuration.XMindConfigCollection; string fileName = standardOutputType switch { FileWriterStandardOutput.Manifest => xMindSettings[ManifestLabel], FileWriterStandardOutput.Meta => xMindSettings[MetaLabel], FileWriterStandardOutput.Content => xMindSettings[ContentLabel], _ => throw new InvalidOperationException("CreateWriterFactoryMethod haven't assigned writer") }; bool useDefaultPath = basePath == null; IXMindWriter result; var writerConfig = new FileWriterOutputConfig(fileName, useDefaultPath); if (!useDefaultPath) { var xmindDefaultFileLocation = XMindConfigurationLoader.Configuration .GetOutputFilesLocations()[fileName]; writerConfig.SetBasePath(Path.Combine(basePath, xmindDefaultFileLocation)); } result = new FileWriter().SetOutput(writerConfig); return(result); }
public static Func <XMindWriterContext, List <IXMindWriter>, IXMindWriter> CreateResolverFactoryMethod(FileWriterStandardOutput standardOutputType) { Func <XMindWriterContext, List <IXMindWriter>, IXMindWriter> result; switch (standardOutputType) { case FileWriterStandardOutput.Manifest: result = FileWriterUtils.ResolveManifestFile; break; case FileWriterStandardOutput.Meta: result = FileWriterUtils.ResolveMetaFile; break; case FileWriterStandardOutput.Content: result = FileWriterUtils.ResolveContentFile; break; default: result = null; break; } if (result == null) { throw new InvalidOperationException("CreateResolverFactoryMethod haven't assigned binding"); } return(result); }
public static Func <XMindWriterContext, List <IXMindWriter>, IXMindWriter> CreateResolverFactoryMethod(FileWriterStandardOutput standardOutputType) => standardOutputType switch {
public FileWriter(FileWriterStandardOutput standardOutput) { _isAutoAddedResolver = true; _fileWriterStandardOutput = standardOutput; }