public static UrlEncoder Create(TextEncoderSettings settings);
public static JavaScriptEncoder Create(TextEncoderSettings settings);
public TextEncoderSettings(TextEncoderSettings other);
public void ConfigureServices(IServiceCollection services) { services.Configure <AppSettings>(Configuration); // We re-register the Scenarios as an instance singleton here to avoid it being created again due to the // registration done in Program.Main services.AddSingleton(Scenarios); // Common DB services services.AddSingleton <IRandom, DefaultRandom>(); services.AddEntityFrameworkSqlServer(); var appSettings = Configuration.Get <AppSettings>(); Console.WriteLine($"Database: {appSettings.Database}"); switch (appSettings.Database) { case DatabaseServer.PostgreSql: var settings = new NpgsqlConnectionStringBuilder(appSettings.ConnectionString); if (!settings.NoResetOnClose) { throw new ArgumentException("No Reset On Close=true must be specified for Npgsql"); } if (settings.Enlist) { throw new ArgumentException("Enlist=false must be specified for Npgsql"); } services.AddDbContextPool <ApplicationDbContext>(options => options.UseNpgsql(appSettings.ConnectionString)); if (Scenarios.Any("Raw") || Scenarios.Any("Dapper")) { services.AddSingleton <DbProviderFactory>(NpgsqlFactory.Instance); } break; case DatabaseServer.SqlServer: services.AddDbContextPool <ApplicationDbContext>(options => options.UseSqlServer(appSettings.ConnectionString)); if (Scenarios.Any("Raw") || Scenarios.Any("Dapper")) { services.AddSingleton <DbProviderFactory>(SqlClientFactory.Instance); } break; case DatabaseServer.MySql: services.AddDbContextPool <ApplicationDbContext>(options => options.UseMySql(appSettings.ConnectionString)); if (Scenarios.Any("Raw") || Scenarios.Any("Dapper")) { services.AddSingleton <DbProviderFactory>(MySql.Data.MySqlClient.MySqlClientFactory.Instance); } break; case DatabaseServer.MongoDb: var mongoClient = new MongoClient(appSettings.ConnectionString); var mongoDatabase = mongoClient.GetDatabase("hello_world"); services.AddSingleton(mongoClient); services.AddSingleton(mongoDatabase); services.AddSingleton(sp => mongoDatabase.GetCollection <Fortune>("fortune")); services.AddSingleton(sp => mongoDatabase.GetCollection <World>("world")); break; } if (Scenarios.Any("Ef")) { services.AddScoped <EfDb>(); } if (Scenarios.Any("Raw")) { services.AddScoped <RawDb>(); } if (Scenarios.Any("Dapper")) { services.AddScoped <DapperDb>(); } if (Scenarios.Any("Mongo")) { services.AddScoped <MongoDb>(); } if (Scenarios.Any("Fortunes")) { var settings = new TextEncoderSettings(UnicodeRanges.BasicLatin, UnicodeRanges.Katakana, UnicodeRanges.Hiragana); settings.AllowCharacter('\u2014'); // allow EM DASH through services.AddWebEncoders((options) => { options.TextEncoderSettings = settings; }); } if (Scenarios.Any("Mvc")) { var mvcBuilder = services .AddMvcCore() .AddControllersAsServices(); if (Scenarios.MvcJson || Scenarios.Any("MvcDbSingle") || Scenarios.Any("MvcDbMulti")) { mvcBuilder.AddJsonFormatters(); } if (Scenarios.MvcViews || Scenarios.Any("MvcDbFortunes")) { mvcBuilder .AddViews() .AddRazorViewEngine(); } } if (Scenarios.Any("MemoryCache")) { services.AddMemoryCache(); } if (Scenarios.Any("ResponseCaching")) { services.AddResponseCaching(); } }
static void Main(string[] args) { // Activate Gnostice product Framework.ActivateLicense("4AF4-263D-70A5-F5C8-57E6-045C-ED92-5369"); // Instantiate DocumentConverter DocumentConverter docConverter = new DocumentConverter(); // Subscribe to Error event docConverter.Error += docConverter_Error; // Input Directory string inputPath = @"../../../../../03. Sample Files/"; // Output Directory string outputPath = @"../../../../../04. Output/"; // Output Format string outputFormat = "txt"; // List of files as input for the document Converter List<string> inputFiles = Directory.GetFiles(inputPath).ToList(); // Single input file string inputFile = inputPath + "input.docx"; // Single output file string outputFile = outputPath + "output." + outputFormat; #region Simple Conversion // Converting sample input file to TXT format docConverter.ConvertToFile(inputFile, outputFile); #endregion // public List<string> ConvertToFile( // object input, => accepts string (file name) or Stream (file stream) or List<string> or List<Stream> // string outputFileFormat, => expected output file format // string outputDir, => directory in which the output files are to be stored // string baseFileName = "", => name of the output converted file // ConversionMode conversionmode, => ConversionMode.ConvertToSeparateFiles to create a separated file for each converted input file // ConverterSettings converterSettings = null, => specifiy the range of pages to be converted // EncoderSettings encoderSettings = null, => set the information for encoding the document // string inputDocPassword = "" => password for the input document // ); #region One to One Conversion // Converts all //ConversionMode.ConvertToSeparateFiles=>Many to many conversion //Convert list of files in inputFiles into a single output file by specifying Conversion mode as ConversionMode.ConvertToSeperateFiles docConverter.ConvertToFile(inputFiles, outputFormat, outputPath, "ConvertToTXT_OneToOne_Multiple", ConversionMode.ConvertToSeperateFiles); #endregion #region Convert to single file //ConversionMode.ConverToSingleFile => Convert all the input files and merge it to a single file //Converts list of files in inputFiles into a single output file by specifying Conversion mode as ConversionMode.ConvertToSingleFile docConverter.ConvertToFile(inputFiles, outputFormat, outputPath, "ConvertToTXT_ManyToOne", ConversionMode.ConvertToSingleFile); #endregion #region Converting file using ConverterSettings // Instantiate ConverterSettings ConverterSettings cp = new ConverterSettings(); // Converter Parameter : PageRange // 4 different types of page ranges // PageRange.All => Converts all pages in input file // PageRange.Even => Converts Pages with even page number // PageRange.Odd => Converts Pages with odd page number // PageRange.Custom => Converts set of pages from input file. ** page range should be specified in CustomPageRange // Convert all even pages in input file cp.PageRange = PageRange.Even; docConverter.ConvertToFile(inputFile, outputFormat, outputPath, "ConvertToTXT_WithConverterSettings_Even", ConversionMode.ConvertToSeperateFiles, null, cp); // Convert specific pages from input file, say one needs to convert pages 1,4,8,9,10,11,12 from input file cp.PageRange = PageRange.Custom; cp.CustomPageRange = "1,4,8-12"; // **PageRange should be set to PageRange.Custom docConverter.ConvertToFile(inputFile, outputFormat, outputPath, "ConvertToTXT_WithConverterSettings_Custom", ConversionMode.ConvertToSeperateFiles, null, cp); #endregion #region TXT Encoder Parameters // For encoding file into TXT textEncoderParams have to be specified TextEncoderSettings txtEncoderParams = new TextEncoderSettings(); txtEncoderParams.ByteOrderMarkBytes = new byte[0]; // Types of file Encoding Files 'FileEncoding' // FileEncoding.ISO_8859_1=> encoding files in ISO 8859-1 // FileEncoding.US_ASCII=>Encoding files in US ASCII // FileEncoding.UTF_16BE=> Encoding files in UTF 16BE // FileEncoding.UTF_16LE=> Encoding files in UTF 16LE // FileEncoding.UTF_8=> Encoding files in UTF 8 (default file encoding) txtEncoderParams.FileEncoding = FileEncoding.UTF_8; // 6 members of TextFormatter // TextFormatter.BreakLines=> break point at every line // TextFormatter.BreakPages=>break point at every page // TextFormatter.BreakParagraphs=>break point at every paragraph // TextFormatter.CustomPageBreak=>to enable cutom break point // TextFormatter.CustomPageBreakText=>set the custom break point // TextFormatter.FILE_SEPARATOR_CHAR=>set the file separator character // TextFormatter.PageBreakText=>set the page break text // For setting break point to every line txtEncoderParams.TextFormatter.CustomPageBreak = true; txtEncoderParams.TextFormatter.CustomPageBreakText = "<<Page Break>>"; // txtEncoderParams.UseByteOrderMark=>to use byte order mark txtEncoderParams.UseByteOrderMark = true; docConverter.ConvertToFile(inputFile, "txt", outputPath, "ConvertToTXT_WithEncoderSettings", ConversionMode.ConvertToSeperateFiles, txtEncoderParams, cp); #endregion }
public void ForbidRanges_Null() { TextEncoderSettings filter = new TextEncoderSettings(new OddTextEncoderSettings()); Assert.Throws <ArgumentNullException>("ranges", () => filter.ForbidRanges(null)); }
public void ConfigureServices(IServiceCollection services) { services.Configure <AppSettings>(Configuration); // We re-register the Scenarios as an instance singleton here to avoid it being created again due to the // registration done in Program.Main services.AddSingleton(Scenarios); // Common DB services services.AddSingleton <IRandom, DefaultRandom>(); services.AddEntityFrameworkSqlServer(); var appSettings = Configuration.Get <AppSettings>(); Console.WriteLine($"Database: {appSettings.Database}"); if (appSettings.Database == DatabaseServer.PostgreSql) { if (Scenarios.Any("Ef")) { services.AddDbContextPool <ApplicationDbContext>(options => options.UseNpgsql(appSettings.ConnectionString)); } if (Scenarios.Any("Raw") || Scenarios.Any("Dapper")) { services.AddSingleton <DbProviderFactory>(NpgsqlFactory.Instance); } } else if (appSettings.Database == DatabaseServer.MySql) { if (Scenarios.Any("Raw") || Scenarios.Any("Dapper")) { services.AddSingleton <DbProviderFactory>(MySqlClientFactory.Instance); } } if (Scenarios.Any("Ef")) { services.AddScoped <EfDb>(); } if (Scenarios.Any("Raw")) { services.AddScoped <RawDb>(); } if (Scenarios.Any("Dapper")) { services.AddScoped <DapperDb>(); } if (Scenarios.Any("Fortunes")) { var settings = new TextEncoderSettings(UnicodeRanges.BasicLatin, UnicodeRanges.Katakana, UnicodeRanges.Hiragana); settings.AllowCharacter('\u2014'); // allow EM DASH through services.AddWebEncoders((options) => { options.TextEncoderSettings = settings; }); } if (Scenarios.Any("Mvc")) { var mvcBuilder = services .AddMvcCore() .AddControllersAsServices(); if (Scenarios.MvcJson || Scenarios.Any("MvcDbSingle") || Scenarios.Any("MvcDbMulti")) { mvcBuilder.AddJsonFormatters(); } if (Scenarios.MvcViews || Scenarios.Any("MvcDbFortunes")) { mvcBuilder .AddViews() .AddRazorViewEngine(); } } }
public void AllowRanges_NullRange() { TextEncoderSettings filter = new TextEncoderSettings(); Assert.Throws <ArgumentNullException>("ranges", () => filter.AllowRanges(null)); }
public void ForbidChars_Null() { TextEncoderSettings filter = new TextEncoderSettings(UnicodeRanges.BasicLatin); Assert.Throws <ArgumentNullException>("characters", () => filter.ForbidCharacters(null)); }
public void AllowFilter_NullCodePoints() { TextEncoderSettings filter = new TextEncoderSettings(UnicodeRanges.BasicLatin); Assert.Throws <ArgumentNullException>("codePoints", () => filter.AllowCodePoints(null)); }
public void Ctor_Parameterless_CreatesEmptyFilter() { var filter = new TextEncoderSettings(); Assert.Equal(0, filter.GetAllowedCodePoints().Count()); }
public void AllowChars_Null() { TextEncoderSettings filter = new TextEncoderSettings(); Assert.Throws <ArgumentNullException>("characters", () => filter.AllowCharacters(null)); }
public static bool IsCharacterAllowed(this TextEncoderSettings settings, char character) { var bitmap = settings.GetAllowedCharacters(); return(bitmap.IsCharacterAllowed(character)); }
public HtmlEncoder(TextEncoderSettings filter) { _encoder = System.Text.Encodings.Web.HtmlEncoder.Create(filter); }
public JavaScriptStringEncoder(TextEncoderSettings filter) { _encoder = System.Text.Encodings.Web.JavaScriptEncoder.Create(filter); }
public void GenerateCorrectJson() { // Arrange Room room = new Room { Id = 1, Capacity = 2, Rows = 2 }; ReservedSeat rS = new ReservedSeat { Id = 1, RowId = 1, SeatId = 1, SeatState = SeatState.Reserved }; List <ReservedSeat> seats = new List <ReservedSeat> { rS }; // Arrange List <ObjRow> ObjRowList = new List <ObjRow>(); for (var j = 1; j <= room.Rows; j++) { List <ObjSeat> objSeatList = new List <ObjSeat>(); for (var i = 1; i <= (room.Capacity / room.Rows); i++) { ObjSeat ObjSeat = new ObjSeat { GridSeatNum = i, seatNumber = i, SeatStatus = "0" }; var seatTaken = 0; seats.ForEach(s => { if (s.SeatId == i & s.RowId == j & s.SeatState == SeatState.Reserved) { seatTaken = 1; } if (s.SeatId == i & s.RowId == j & s.SeatState == SeatState.Disabled) { seatTaken = 2; } }); if (seatTaken > 0) { ObjSeat.SeatStatus = seatTaken.ToString(); seatTaken = 0; } objSeatList.Add(ObjSeat); } ObjRow ObjRow = new ObjRow { GridRowId = j, PhyRowId = j.ToString(), objSeat = objSeatList }; ObjRowList.Add(ObjRow); } ObjArea ObjArea = new ObjArea { AreaDesc = "EXECUTIVE", AreaCode = "0000000003", AreaNum = "1", HasCurrentOrder = true, objRow = ObjRowList }; List <ObjArea> ObjAreaList = new List <ObjArea>(); ObjAreaList.Add(ObjArea); ColAreas ColAreas = new ColAreas { Count = 1, intMaxSeatId = 21, intMinSeatId = 2, objArea = ObjAreaList }; SeatLayout SeatLayout = new SeatLayout { colAreas = ColAreas }; List <object> areaList = new List <object>(); List <object> groupedSeatsList = new List <object>(); Root Root = new Root { product_id = 46539040, freeSeating = false, tempTransId = "1ecae165f2d86315fea19963d0ded41a", seatLayout = SeatLayout, areas = areaList, groupedSeats = groupedSeatsList }; var encoderSettings = new TextEncoderSettings(); encoderSettings.AllowCharacters('\u0022'); encoderSettings.AllowRange(UnicodeRanges.BasicLatin); var options = new JsonSerializerOptions { Encoder = JavaScriptEncoder.Create(encoderSettings), WriteIndented = true }; string jsonString = JsonSerializer.Serialize(Root, options); // Act string sut = JSONSeatingHelper.JSONSeating(room, seats); // Assert Assert.Equal(sut, jsonString); }