public ActionResult LoginPost(UsuarioViewModel loginModel) { ILoginBusiness login = DependencyFactory.Resolve<ILoginBusiness>(); try { var user = login.LoginUser(loginModel.Mail, loginModel.Password); var keyToken = StringCompressor.CompressString(user.SerializarToJson()); FormsAuthentication.SetAuthCookie(keyToken, true); Response.StatusCode = 200; return new JsonResult { Data = user, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; } catch (ExceptionBusiness ex) { Response.StatusCode = 404; return new JsonResult { Data = ex.Message, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; } catch (Exception) { Response.StatusCode = 500; return new JsonResult { Data = "Error del servidor", JsonRequestBehavior = JsonRequestBehavior.AllowGet }; } }
public void Save() { WordSet wordSet = GameController.Instance.GetWordSet(); var puzzle = new UserPuzzle { Clue = wordSet.Clue, Content = StringCompressor.CompressString(JsonUtility.ToJson(wordSet)) }; LocalDBController.Instance.UserPuzzles.AddPuzzle(puzzle); }
public void CompressDecompressTest() { var text = " asd fdghfg d werwse uyiy uyui bn cvgbh dfgd fg"; var bytes = Encoding.UTF8.GetBytes(text); var base64 = Convert.ToBase64String(bytes); var textLength = text.Length; var base64Length = base64.Length; var compressedText = StringCompressor.CompressString(text); var decompressedText = StringCompressor.DecompressString(compressedText); Assert.AreEqual(text, decompressedText); }
public void SampleTest1() { //Arrange string s1 = "abcdefghijklmnop"; //Act string compressed = StringCompressor.CompressString(s1); string uncompressed = StringCompressor.DecompressString(compressed); //Artifacts mTestHelper.CreateTestArtifact("Stringcompression", s1 + Environment.NewLine + compressed); //Assert Assert.AreEqual(uncompressed, s1, "uncompressed=s1"); }
public async Task <IActionResult> SearchInMain(MainModelView mainModelView) { if (mainModelView.Search != null) { long id; if (long.TryParse(mainModelView.Search, out id)) { var q = await appDbContext.MainTable.Where(i => i.Id == id).ToListAsync(); var f = await appDbContext.MainTable.ToListAsync(); var filt = f.Select(i => i._IPinfo.CompanyName).Distinct().ToList(); MainModelView mainModelView1 = new MainModelView() { MainTables = q }; TempData["MainData"] = JsonConvert.SerializeObject(mainModelView1); return(RedirectToAction("MainTable", "Home")); } else if (mainModelView.Search.Length != 0) { //var tmp = await appDbContext.MainTable.Where(i => i.FilesInfo.Path.Contains(mainModelView.Search)).ToListAsync(); var cmp = await appDbContext.MainTable.Where(i => i._IPinfo.CompanyName.Contains(mainModelView.Search)).ToListAsync(); //tmp.AddRange(cmp); // var f = await appDbContext.MainTable.ToListAsync(); // var filt = f.Select(i => i._IPinfo.CompanyName).Distinct().ToList(); MainModelView mainModelView11 = new MainModelView() { MainTables = cmp, }; string str = JsonConvert.SerializeObject(cmp); byte[] arr = Encoding.ASCII.GetBytes(str); var tq = StringCompressor.CompressString(str); // string h = "hello"; TempData["MainData"] = tq; //return RedirectToAction("MainTable", "Home"); } } return(RedirectToAction("MainTable", "Home")); }
public UsuarioViewModel LoginPost(UsuarioViewModel loginModel) { ILoginBusiness login = DependencyFactory.Resolve <ILoginBusiness>(); try { var user = login.LoginUser(loginModel.Mail, loginModel.Password); var keyToken = StringCompressor.CompressString(user.SerializarToJson()); FormsAuthentication.SetAuthCookie(keyToken, true); return(user); } catch (ExceptionBusiness) { throw; } catch (Exception ex) { throw new Exception("Error del servidor", ex); } }
public void CompressDecomPressString() { // Arrange var subject = StringEncryptor.Instance; var originalString = "Testing 123: Add some special characters &é@#'öçà!£$<ù}"; // Act var encryptedString1 = subject.Encrypt(originalString); var compressedString1 = StringCompressor.CompressString(encryptedString1); var decompressedString1 = StringCompressor.DecompressString(compressedString1); var decryptedString1 = subject.Decrypt(decompressedString1); var compressedString2 = StringCompressor.CompressString(originalString); var decompressedString2 = StringCompressor.DecompressString(compressedString2); // Assert Assert.AreEqual(originalString, decryptedString1, "Compressed and Decrypted string should match original string"); //Assert.IsTrue((compressedString1.Length <= encryptedString1.Length), "Compressed Encrypted String should be smaller than the Encrypted string"); Assert.AreEqual(originalString, decompressedString2, "Decompressed string should match original string"); //Assert.IsTrue((compressedString2.Length <= originalString.Length), "Compressed String should be smaller than the original"); }
/// <summary> /// Save the data in the files object to the specified path /// </summary> public void Save(string path) { // This will contain the uncompressed data that we are going to dump into the output file List <string> data = new List <string>(); foreach (Scanning.File file in files) { // We use a | to split the parameters since windows will not allow that character to appear in file names // We also convert the bools to be either "1" or "0" to save space data.Add($"{file.path}|{file.size}|{(file.isFolder ? 1 : 0)}|{(file.isFirstRoot ? 1 : 0)}"); } // We then use a * as the line seperator since that is another character windows will not allow and compress the resulting string string compressed = StringCompressor.CompressString(String.Join("*", data)); // Create the output file using (FileStream fs = File.Create(path)) { // Write the data to the file byte[] raw = new UTF8Encoding(true).GetBytes(compressed); fs.Write(raw, 0, raw.Length); } }
public void exportData(long startTimestamp, string basePath) { if (Directory.Exists(basePath + "/export") == false) { Directory.CreateDirectory(basePath + "/export"); } string now = Timestamp.getNow().ToString(); string nowReadable = DateTime.Now.ToString("yyyy-MM-dd"); int i = 0; foreach (MongoCollection <BsonDocument> collection in mongodb.getCollections()) { if (collection.Name.Contains("system.indexes") == false) { string export_str = getExportData(startTimestamp, collection).ToString(); export_str = StringCompressor.CompressString(export_str); File.WriteAllText(basePath + "/export/database_" + nowReadable + "_" + startTimestamp + "_" + now + "_PART-" + i + ".json", export_str); //1443611923418 i++; } } }
private static string SerializeAndCompress(Dictionary <string, MedalCount> results) { return(StringCompressor.CompressString(JsonConvert.SerializeObject(results))); }
public string GetString() { return(StringCompressor.CompressString(JsonUtility.ToJson(this))); }
/// <summary> /// Compresses a string and returns a deflate compressed, Base64 encoded string. /// </summary> /// <param name="uncompressedString">String to compress</param> public static string ToCompressString(this string uncompressedString) { return(StringCompressor.CompressString(uncompressedString)); }
private static string SerializeAndCompress(IEnumerable <string> recordsForYear) { return(StringCompressor.CompressString(JsonConvert.SerializeObject(recordsForYear))); }
private static string SerializeAndCompress(Dictionary <string, List <string> > recordsByYear) { return(StringCompressor.CompressString(JsonConvert.SerializeObject(recordsByYear))); }
void OnGUI() { #region Get clue and category GUILayout.Label("Generator", EditorStyles.boldLabel); _clue = EditorGUILayout.TextField("Clue", _clue); _category = (CategoryComponent)EditorGUILayout.ObjectField(_category, typeof(CategoryComponent), true); #endregion if (GUILayout.Button("Save")) { #region Initial Checks if (_clue == "") { EditorUtility.DisplayDialog("Error", "Specify clue!", "OK"); return; } if (_category == null) { EditorUtility.DisplayDialog("Error", "Specify category!", "OK"); return; } if (_category.GetComponentsInChildren <CategoryComponent>().Length > 1) { EditorUtility.DisplayDialog("Error", "Category " + _category.Name + " has subcategory!", "OK"); return; } #endregion #region Get word manager var wordManagers = FindObjectsOfType <WordManager>(); if (wordManagers.Length == 0) { EditorUtility.DisplayDialog("Error", "Word manager not found!", "OK"); return; } if (wordManagers.Length > 1) { EditorUtility.DisplayDialog("Error", "More than one Word manager!", "OK"); return; } var wordManager = wordManagers[0]; #endregion #region Create wordSet WordSet wordSet = new WordSet(); wordSet.Clue = _clue; wordSet.Words = new List <SWord>(); foreach (var word in wordManager.GetComponentsInChildren <Word>()) { wordSet.Words.Add(new SWord(word)); } #endregion #region Save wordset to database // create category in database var puzzle = new Puzzle { ID = 1, CategoryID = _category.ID, Clue = wordSet.Clue, Row = _category.transform.childCount, Content = StringCompressor.CompressString(JsonUtility.ToJson(wordSet)), LastUpdate = DateTime.Now }; Puzzle newPuzzle = ServerEditor.Post <Puzzle>(@"Puzzles/Create", puzzle, "Create puzzle", "Create"); if (newPuzzle == null) { EditorUtility.DisplayDialog("Error", "Puzzle can't save in server!", "OK"); return; } _category.AddPuzzle(newPuzzle); #endregion } }
public static string CompressString(string input) { return(StringCompressor.CompressString(input)); }
void OnGUI() { #region Get clue and category GUILayout.Label("Generator", EditorStyles.boldLabel); _clue = EditorGUILayout.TextField("Clue", _clue); _puzzle = (PuzzleComponent)EditorGUILayout.ObjectField(_puzzle, typeof(PuzzleComponent), true); #endregion #region Spawn wordSet if (GUILayout.Button("Spawn")) { _clue = _puzzle.Clue; var Wordspawner = FindObjectOfType <WordSpawner>(); if (Wordspawner == null) { EditorUtility.DisplayDialog("Error", "Can't find word spawner", "Ok"); return; } Wordspawner.EditorInstatiate = EditorInstantiate; WordSet wSet = new WordSet(); JsonUtility.FromJsonOverwrite(StringCompressor.DecompressString(_puzzle.Content), wSet); Wordspawner.WordSet = wSet; _wordSet = wSet; Wordspawner.SpawnWords(); } #endregion #region Regenerate wordSet if (GUILayout.Button("Regenerate")) { var wordGenerator = FindObjectOfType <WordSetGenerator>(); if (wordGenerator == null) { EditorUtility.DisplayDialog("Error", "Can't find word spawner", "Ok"); return; } wordGenerator.AllWords = ""; foreach (var word in _wordSet.Words) { wordGenerator.AllWords += word.Name + " "; } wordGenerator.UsedWordCount = _wordSet.Words.Count; MgsCoroutine.GetTime = GetTime; MgsCoroutine.Start( wordGenerator.MakeWordSet(), () => EditorUtility.DisplayCancelableProgressBar(MgsCoroutine.Title, MgsCoroutine.Info, MgsCoroutine.Percentage), 0.1); EditorUtility.ClearProgressBar(); wordGenerator.EditorInstantiate = EditorInstantiate; wordGenerator.SpawnWordSet(); Selection.activeObject = wordGenerator.gameObject; } #endregion if (GUILayout.Button("Save")) { #region Get word manager var wordManagers = FindObjectsOfType <WordManager>(); if (wordManagers.Length == 0) { EditorUtility.DisplayDialog("Error", "Word manager not found!", "OK"); return; } if (wordManagers.Length > 1) { EditorUtility.DisplayDialog("Error", "More than one Word manager!", "OK"); return; } var wordManager = wordManagers[0]; #endregion #region Create New wordSet WordSet wordSet = new WordSet(); wordSet.Clue = _clue; wordSet.Words = new List <SWord>(); foreach (var word in wordManager.GetComponentsInChildren <Word>()) { wordSet.Words.Add(new SWord(word)); } #endregion #region Replace Puzzle TO Server // create category in database var puzzle = new Puzzle { ID = _puzzle.PuzzleData.ID, CategoryID = _puzzle.PuzzleData.CategoryID, Clue = _clue, Row = _puzzle.PuzzleData.Row, Content = StringCompressor.CompressString(JsonUtility.ToJson(wordSet)), LastUpdate = DateTime.Now }; _puzzle.Content = puzzle.Content; _puzzle.Clue = puzzle.Clue; _puzzle.Dirty = true; _puzzle.UpdateData(); ServerEditor.Post(@"Puzzles/Update/" + _puzzle.PuzzleData.ID, puzzle, "Update puzzle", "Update"); #endregion } }
private static void RunExperiment(ExperimentParameters experimentParameters)//, DatabaseContext databaseX) { var database = new DatabaseContext(DatabaseFullPath); var version = new Version(DateTime.Now); var stoper = new Stopwatch(); //if (database.Exists(experimentParameters)) //{ // Console.WriteLine("BYLEM WIDZIALEM"); // //database.Dispose(); // return; //} database.Insert(version); database.Insert(experimentParameters); database.Insert(experimentParameters.EvolutionParameters); IDictionary <int, EvolutionStep> evolutionSteps = null; try { var enginesFactory = new EnginesFactory(); var engine = enginesFactory.Create(experimentParameters); var distanceCalculator = new CanberraDistanceCalculator(); var positivePointsGenerator = new PositivePointsGenerator(); stoper.Restart(); var positiveTrainingPoints = positivePointsGenerator.GeneratePoints(experimentParameters.NumberOfPositivePoints, engine.Benchmark.Domains, engine.Benchmark.Constraints); stoper.Stop(); engine.Statistics.PositiveTrainingPointsGenerationTime = stoper.Elapsed; var negativePointsGenerator = new NegativePointsGenerator(positiveTrainingPoints, distanceCalculator, new NearestNeighbourDistanceCalculator(distanceCalculator)); //var negativeTrainingPoints = negativePointsGenerator.GeneratePoints(experimentParameters.NumberOfNegativePoints, engine.Benchmark.Domains); stoper.Restart(); var negativeTrainingPoints = negativePointsGenerator.GeneratePoints(experimentParameters.NumberOfNegativePoints, engine.Benchmark.Domains, engine.Benchmark.Constraints); stoper.Stop(); engine.Statistics.NegativeTrainingPointsGenerationTime = stoper.Elapsed; //Console.WriteLine("Evolution starts!"); var trainingPoints = positiveTrainingPoints.Concat(negativeTrainingPoints).ToArray(); stoper.Restart(); var mathModel = engine.SynthesizeModel(trainingPoints); stoper.Stop(); engine.Statistics.TotalSynthesisTime = stoper.Elapsed; database.Insert(mathModel); var testPointsGenerator = new TestPointsGenerator(); stoper.Restart(); var testPoints = testPointsGenerator.GeneratePoints(experimentParameters.NumberOfTestPoints, engine.Benchmark.Domains, engine.Benchmark.Constraints); stoper.Stop(); engine.Statistics.TestPointsGenerationTime = stoper.Elapsed; var statistics = engine.EvaluateModel(testPoints); database.Insert(statistics); evolutionSteps = engine.CoreEvolutionSteps; //Logger.Instance.Log(experimentParameters); //Logger.Instance.Log(mathModel); //Logger.Instance.Log(statistics); //database.Insert(Logger.Instance.GetLogAsString()); } catch (Exception exception) { database.Insert(exception); } database.Save(); if (evolutionSteps != null && experimentParameters.TrackEvolutionSteps) { Logger.Instance.Log(evolutionSteps); var logsFullPath = Path.GetFullPath(LogsDirPath + experimentParameters.GetFileName("Log", ".cmplog")); File.WriteAllText(logsFullPath, StringCompressor.CompressString(Logger.Instance.GetLogAsString())); } //GlobalStoper.Stop(); //Console.WriteLine(GlobalStoper.ElapsedMilliseconds); //Console.ReadKey(); database.Dispose(); }
void Compress(string String, bool HighDensity, bool Compression) { Generated = false; Progress.text = ""; string CData; Split = false; Texture2D QRCode; if (HighDensity) { if (Compression) { CData = StringCompressor.CompressString(String); } else { CData = String; } if (CData.Length > MaxSize3) { Split = true; } if (Input.GetKey(KeyCode.LeftShift)) { if (Input.GetKey(KeyCode.S)) { Split = true; } else { Split = false; } } if (!Split) { QRClass Data = new QRClass { SaveVersion = "v1", Master = false, UUID = SystemInfo.deviceUniqueIdentifier, ThisQR = 1, Compression = Compression, Data = CData }; CData = JsonUtility.ToJson(Data, false); string[] Data3 = new string[3]; int DataSize = CData.Length; int ChunkSize; while (DataSize % 3 != 0) { CData += " "; DataSize = CData.Length; } ChunkSize = DataSize / 3; int Chunk = 0; for (int i = 0; i < DataSize; i++) { if (i % ChunkSize == 0) { Chunk++; } Data3[Chunk - 1] += CData[i]; } Color[] Img1 = GenerateBarcode(Data3[0], 1024, 1024, Color.cyan).GetPixels(); Color[] Img2 = GenerateBarcode(Data3[1], 1024, 1024, Color.magenta).GetPixels(); Color[] Img3 = GenerateBarcode(Data3[2], 1024, 1024, Color.yellow).GetPixels(); for (var i = 0; i < Img1.Length; ++i) { Img2[i] *= Img3[i]; Img1[i] *= Img2[i]; } QRCode = new Texture2D(1024, 1024, TextureFormat.RGBA32, false); QRCode.filterMode = FilterMode.Point; QRCode.SetPixels(Img1); QRCode.Apply(); QRarr = new Texture2D[1]; MaxQR = 0; QRarr[0] = QRCode; } else { int Part = 0; decimal D = CData.Length; int Blocks = (int)Math.Ceiling(D / MaxSize3); string[] SplitData = new string[Blocks]; for (int i = 0; i < CData.Length; i++) { if (i % MaxSize3 == 0) { Part++; } SplitData[Part - 1] += CData[i]; } QRarr = new Texture2D[Blocks + 1]; QRClass Package = new QRClass { SaveVersion = "v1", Master = true, UUID = SystemInfo.deviceUniqueIdentifier, MaxFiles = Blocks }; string Header = JsonUtility.ToJson(Package, false); string[] Header3 = new string[3]; int HeaderSize = Header.Length; int ChunkHSize; while (HeaderSize % 3 != 0) { Header += " "; HeaderSize = Header.Length; } ChunkHSize = HeaderSize / 3; int HChunk = 0; for (int j = 0; j < HeaderSize; j++) { if (j % ChunkHSize == 0) { HChunk++; } Header3[HChunk - 1] += Header[j]; } Color[] ImgH1 = GenerateBarcode(Header3[0], 1024, 1024, Color.cyan).GetPixels(); Color[] ImgH2 = GenerateBarcode(Header3[1], 1024, 1024, Color.magenta).GetPixels(); Color[] ImgH3 = GenerateBarcode(Header3[2], 1024, 1024, Color.yellow).GetPixels(); for (var j = 0; j < ImgH1.Length; ++j) { ImgH2[j] *= ImgH3[j]; ImgH1[j] *= ImgH2[j]; } Texture2D QRHeader = new Texture2D(1024, 1024, TextureFormat.RGBA32, false); QRHeader.filterMode = FilterMode.Point; QRHeader.SetPixels(ImgH1); QRHeader.Apply(); QRarr[0] = QRHeader; for (int i = 1; i < Blocks + 1; i++) { QRClass Data = new QRClass { SaveVersion = "v1", Master = false, UUID = SystemInfo.deviceUniqueIdentifier, ThisQR = i + 1, Compression = Compression, Data = SplitData[i - 1] }; CData = JsonUtility.ToJson(Data, false); string[] Data3 = new string[3]; int DataSize = CData.Length; int ChunkSize; while (DataSize % 3 != 0) { CData += " "; DataSize = CData.Length; } ChunkSize = DataSize / 3; int Chunk = 0; for (int j = 0; j < DataSize; j++) { if (j % ChunkSize == 0) { Chunk++; } Data3[Chunk - 1] += CData[j]; } Color[] Img1 = GenerateBarcode(Data3[0], 1024, 1024, Color.cyan).GetPixels(); Color[] Img2 = GenerateBarcode(Data3[1], 1024, 1024, Color.magenta).GetPixels(); Color[] Img3 = GenerateBarcode(Data3[2], 1024, 1024, Color.yellow).GetPixels(); for (var j = 0; j < Img1.Length; ++j) { Img2[j] *= Img3[j]; Img1[j] *= Img2[j]; } QRCode = new Texture2D(1024, 1024, TextureFormat.RGBA32, false) { filterMode = FilterMode.Point }; QRCode.SetPixels(Img1); QRCode.Apply(); QRarr[i] = QRCode; } MaxQR = Blocks; } } else { if (Compression) { CData = StringCompressor.CompressString(String); } else { CData = String; } if (CData.Length > MaxSize) { Split = true; } if (Input.GetKey(KeyCode.LeftShift)) { if (Input.GetKey(KeyCode.S)) { Split = true; } else { Split = false; } } if (!Split) { QRClass Data = new QRClass { SaveVersion = "v1", Master = false, UUID = SystemInfo.deviceUniqueIdentifier, ThisQR = 1, Compression = Compression, Data = CData }; CData = JsonUtility.ToJson(Data, false); Color[] Img = GenerateBarcode(CData, 1024, 1024, Color.black).GetPixels(); QRCode = new Texture2D(1024, 1024, TextureFormat.RGBA32, false) { filterMode = FilterMode.Point }; QRCode.SetPixels(Img); QRCode.Apply(); QRarr = new Texture2D[1]; MaxQR = 0; QRarr[0] = QRCode; } else { int Part = 0; decimal D = CData.Length; int Blocks = (int)Math.Ceiling(D / MaxSize); string[] SplitData = new string[Blocks]; for (int i = 0; i < CData.Length; i++) { if (i % MaxSize == 0) { Part++; } SplitData[Part - 1] += CData[i]; } QRarr = new Texture2D[Blocks + 1]; QRClass Package = new QRClass { SaveVersion = "v1", Master = true, UUID = SystemInfo.deviceUniqueIdentifier, MaxFiles = Blocks }; string Header = JsonUtility.ToJson(Package, false); Color[] Img1 = GenerateBarcode(Header, 1024, 1024, Color.black).GetPixels(); Texture2D QRHeader = new Texture2D(1024, 1024, TextureFormat.RGBA32, false) { filterMode = FilterMode.Point }; QRHeader.SetPixels(Img1); QRHeader.Apply(); QRarr[0] = QRHeader; for (int i = 1; i < Blocks + 1; i++) { QRClass Data = new QRClass { SaveVersion = "v1", Master = false, UUID = SystemInfo.deviceUniqueIdentifier, ThisQR = i + 1, Compression = Compression, Data = SplitData[i - 1] }; CData = JsonUtility.ToJson(Data, false); Color[] Img = GenerateBarcode(CData, 1024, 1024, Color.black).GetPixels(); QRCode = new Texture2D(1024, 1024, TextureFormat.RGBA32, false); QRCode.filterMode = FilterMode.Point; QRCode.SetPixels(Img); QRCode.Apply(); QRarr[i] = QRCode; } MaxQR = Blocks; } } Generated = true; }