public void DeleteFolder(long folderId) { var userData = _readOnlyRepository.First <Account>(a => a.EMail == User.Identity.Name); var folderToDelete = userData.Files.FirstOrDefault(f => f.Id == folderId); //if (!folderToDelete.IsDirectory) // { // var deleteRequest = new DeleteObjectRequest // { // BucketName = userData.BucketName, // Key = fileToDelete.Url + fileToDelete.Name // }; // AWSClient.DeleteObject(deleteRequest); // fileToDelete.IsArchived = true; // } // else // { var userFiles = userData.Files.Where(t => t.Url.Contains(folderToDelete.Name)); foreach (var file in userFiles) { if (file == null) { continue; } if (file.IsDirectory) { DeleteFolder(file.Id); } var fileFolderArray = file.Url.Split('/'); var fileFolder = fileFolderArray.Length > 1 ? fileFolderArray[fileFolderArray.Length - 2] : fileFolderArray.FirstOrDefault(); if (!file.IsArchived && fileFolder.Equals(folderToDelete.Name) && !string.Equals(file.Name, folderToDelete.Name)) { var deleteRequest = new DeleteObjectRequest { BucketName = userData.BucketName, Key = file.Url + file.Name }; AWSClient.DeleteObject(deleteRequest); AddActivity("El usuario ha borrado el folder " + folderToDelete.Name); file.IsArchived = true; _writeOnlyRepository.Update(userData); } } folderToDelete.IsArchived = true; var deleteRequest2 = new DeleteObjectRequest { BucketName = userData.BucketName, Key = folderToDelete.Url + folderToDelete.Name + "/" }; AWSClient.DeleteObject(deleteRequest2); _writeOnlyRepository.Update(userData); //} }
static void Main(string[] args) { try { Console.WriteLine("Hello World!"); IAWSClient client = new AWSClient(); IDataService dataService = new DataService(client); Dictionary <string, string> dataToAdd = new Dictionary <string, string>(); dataToAdd.Add("Id", "1"); dataToAdd.Add("name", "Irina Pauna"); dataToAdd.Add("email", "*****@*****.**"); dataService.AddNewRecord(dataToAdd).GetAwaiter().GetResult(); //dataService.GetItemByKey().GetAwaiter().GetResult(); dataService.ScanTable().GetAwaiter().GetResult(); Console.ReadKey(); } catch (Exception ex) { var a = 1; } }
// Use this for initialization void Start() { resetDataFields("..."); awsClient = this.GetComponent <AWSClient>(); streamName = "AmazonRekognitionStreamOut"; StartCoroutine(ReadKinesisStream()); }
public ActionResult CreateFolder(string folderName, string clientDateTime) { if (folderName.Length > 25) { Error("Folder name should be 25 characters maximum!!!"); return(RedirectToAction("ListAllContent")); } var userData = _readOnlyRepository.First <Account>(x => x.EMail == User.Identity.Name); if (userData.Files.Count(l => l.Name == folderName) > 0) { Error("Folder already exists!!!"); return(RedirectToAction("ListAllContent")); } var actualPath = Session["ActualPath"].ToString(); var putFolder = new PutObjectRequest { BucketName = userData.BucketName, Key = actualPath + folderName + "/", ContentBody = string.Empty }; AWSClient.PutObject(putFolder); AddActivity("El usuario ha creado el folder " + folderName); //var serverFolderPath = Server.MapPath("~/App_Data/UploadedFiles/" + actualPath + "/"+folderName); //var folderInfo = new DirectoryInfo(serverFolderPath); //if (folderInfo.Exists) //{ // Error("Folder already exists!!!"); // return RedirectToAction("ListAllContent"); //} var clientDate = Convert.ToDateTime(clientDateTime); userData.Files.Add(new File { Name = folderName, CreatedDate = clientDate, FileSize = 0, IsArchived = false, IsDirectory = true, ModifiedDate = clientDate, Type = "", Url = actualPath }); //var result=Directory.CreateDirectory(serverFolderPath); //if(!result.Exists) // Error("The folder was not created!!! Try again please!!!"); //else //{ Success("The folder was created successfully!!!"); _writeOnlyRepository.Update(userData); //} return(RedirectToAction("ListAllContent")); }
// Use this for initialization void Start() { _C = GetComponent <AWSClient>(); arCam = this.GetComponent <Camera>(); tex = new Texture2D(arCam.pixelWidth, arCam.pixelHeight); screenRect = new Rect(0, 0, arCam.pixelWidth, arCam.pixelHeight); exportInterval = new WaitForSeconds(2.0f); }
public void Start() { _client = GameManager.Instance.Client; if (model != null) { Debug.Log("Retrieved model"); } // DEPRECATED for now. Looking into ml-agents // GetLatestModel(); }
IEnumerator TestClient() { yield return(null); // new WaitForSeconds(1f); try{ // Test POC AWS client AWSClient awsClient = AWSClientObject.GetComponent <AWSClient>(); string streamName = "AmazonRekognitionStreamOut"; awsClient.ReadStream(streamName, (response) => { List <Amazon.Kinesis.Model.Record> records = response.Records; foreach (Amazon.Kinesis.Model.Record awsRecord in records) { try{ string recordString = Encoding.ASCII.GetString(awsRecord.Data.ToArray()); Rekog.Record record = Rekog.Record.Deserialize(recordString); // Debug.Log(record); if (record.rekog_face_details.Count > 0) { printAge(record.rekog_face_details[0].AgeRange.Low, record.rekog_face_details[0].AgeRange.High); printGender(record.rekog_face_details[0].Gender.Value, record.rekog_face_details[0].Gender.Confidence); emotionStr = ""; foreach (Rekog.Emotion emotion in record.rekog_face_details[0].Emotions) { string s = printEmotion(emotion.Type, emotion.Confidence); emotionStr = emotionStr + s; } //emotionText.text = emotionStr; //printConfidence(record.rekog_face_details[0].Mustache.Confidence, record.rekog_face_details[0].Mustache.Value,mustacheText); //printConfidence(record.rekog_face_details[0].Beard.Confidence,record.rekog_face_details[0].Beard.Value ,beardText); //printConfidence(record.rekog_face_details[0].Eyeglasses.Confidence, record.rekog_face_details[0].Eyeglasses.Value, glassesText); } } catch (Exception e) { HandleError(e); } } }); } catch (Exception e) { HandleError(e); } }
IEnumerator TestClient() { yield return(new WaitForSeconds(1)); // Test POC AWS client AWSClient awsClient = AWSClientObject.GetComponent <AWSClient>(); awsClient.ListStreams((ListStreamsResponse r) => { foreach (string streamName in r.StreamNames) { Debug.Log(streamName); } Debug.Log("This prints last."); }); Debug.Log("You would think this would print last, but you'd be wrong."); }
public ActionResult DownloadFile(int fileId) { var userData = _readOnlyRepository.First <Account>(a => a.EMail == User.Identity.Name); var fileData = userData.Files.FirstOrDefault(f => f.Id == fileId); var objectRequest = new GetObjectRequest { BucketName = userData.BucketName, Key = fileData.Url + fileData.Name, Timeout = int.MaxValue, ReadWriteTimeout = int.MaxValue }; var file = AWSClient.GetObject(objectRequest); var byteArray = new byte[file.ContentLength]; file.ResponseStream.Read(byteArray, 0, (int)file.ContentLength); //var template_file = System.IO.File.ReadAllBytes(); return(new FileContentResult(byteArray, fileData.Type) { FileDownloadName = fileData.Name }); }
public ActionResult RenameObject(long objectId, string newObjectName, string clientDateTime2) { var userData = _readOnlyRepository.First <Account>(a => a.EMail == User.Identity.Name); var fileData = _readOnlyRepository.GetById <File>(objectId); var clientDate = Convert.ToDateTime(clientDateTime2); if (!fileData.IsDirectory) { //Copy the object var copyRequest = new CopyObjectRequest { SourceBucket = userData.BucketName, SourceKey = fileData.Url + fileData.Name, DestinationBucket = userData.BucketName, DestinationKey = fileData.Url + newObjectName + "." + (fileData.Name.Split('.').LastOrDefault()), CannedACL = S3CannedACL.PublicRead }; AWSClient.CopyObject(copyRequest); //Delete the original var deleteRequest = new DeleteObjectRequest { BucketName = userData.BucketName, Key = fileData.Url + fileData.Name }; AWSClient.DeleteObject(deleteRequest); fileData.ModifiedDate = clientDate; fileData.Name = newObjectName + "." + (fileData.Name.Split('.').LastOrDefault()); _writeOnlyRepository.Update(fileData); } else { RenameFolder(objectId, fileData.Name, newObjectName, clientDateTime2); fileData.ModifiedDate = clientDate; fileData.Name = newObjectName; _writeOnlyRepository.Update(fileData); } return(RedirectToAction("ListAllContent")); }
// Use this for initialization void Start() { _C = GetComponent <AWSClient>(); Camera arCam = this.GetComponent <Camera>(); arCamTexture = new RenderTexture(arCam.pixelWidth, arCam.pixelHeight, 16, RenderTextureFormat.ARGB32); arCamTexture.Create(); arCam.targetTexture = arCamTexture; tex = new Texture2D(arCamTexture.width, arCamTexture.height); #region Webcam #if DEBUG_Webcam defaultBackground = background.texture; WebCamDevice[] devices = WebCamTexture.devices; if (devices.Length == 0) { Debug.Log("No camera detected"); return; } for (int i = 0; i < devices.Length; i++) { if (devices[i].isFrontFacing) { webCam = new WebCamTexture(devices[i].name, Screen.width / 100, Screen.height / 100); } } if (webCam == null) { Debug.Log("Unable to find webcam"); return; } webCam.Play(); background.texture = webCam; camAvailable = true; #endif #endregion }
public ActionResult DownloadAudio(long id) { var userData = _readOnlyRepository.First <Account>(a => a.EMail == User.Identity.Name); var fileData = userData.Files.FirstOrDefault(f => f.Id == id); var objectRequest = new GetObjectRequest { BucketName = userData.BucketName, Key = fileData.Url + fileData.Name }; var file = AWSClient.GetObject(objectRequest); var byteArray = new byte[file.ContentLength]; file.ResponseStream.Read(byteArray, 0, (int)file.ContentLength); //var template_file = System.IO.File.ReadAllBytes(); return(File(byteArray, "audio/mp3")); // Assuming that the resume is an MS Word document... // return File(t.FileStream, fileData.Type); }
public void RenameFolder(long objectId, string oldObjectName, string newObjectName, string clientDateTime2) { var userData = _readOnlyRepository.First <Account>(a => a.EMail == User.Identity.Name); var fileData = userData.Files.FirstOrDefault(f => f.Id == objectId); var userFiles = userData.Files.Where(t => t.Url.Contains(fileData.Name)); var clientDate = Convert.ToDateTime(clientDateTime2); var newFoldUrl = string.IsNullOrEmpty(fileData.Url) || string.IsNullOrWhiteSpace(fileData.Url) ? newObjectName + "/" : fileData.Url.Replace(oldObjectName, newObjectName) + fileData.Name + "/"; var putFolder = new PutObjectRequest { BucketName = userData.BucketName, Key = newFoldUrl, ContentBody = string.Empty }; AWSClient.PutObject(putFolder); foreach (var file in userFiles) { if (file == null) { continue; } if (file.IsDirectory) { RenameFolder(file.Id, oldObjectName, newObjectName, clientDateTime2); } else { //Copy the object var newUrl = file.Url.Replace(oldObjectName, newObjectName) + file.Name; var copyRequest = new CopyObjectRequest { SourceBucket = userData.BucketName, SourceKey = file.Url + file.Name, DestinationBucket = userData.BucketName, DestinationKey = newUrl, CannedACL = S3CannedACL.PublicRead }; AWSClient.CopyObject(copyRequest); //Delete the original var deleteRequest = new DeleteObjectRequest { BucketName = userData.BucketName, Key = file.Url + file.Name }; AWSClient.DeleteObject(deleteRequest); file.ModifiedDate = clientDate; file.Url = file.Url.Replace(oldObjectName, newObjectName); _writeOnlyRepository.Update(file); } }//fin foreach var deleteFolderRequest = new DeleteObjectRequest { BucketName = userData.BucketName, Key = fileData.Url + fileData.Name + "/" }; AWSClient.DeleteObject(deleteFolderRequest); var newFolderUrl = fileData.Url.Replace(oldObjectName, newObjectName); fileData.Url = newFolderUrl; _writeOnlyRepository.Update(fileData); }
public ActionResult AccountSignUp(AccountSignUpModel model) { var result = _readOnlyRepository.Query <Account>(a => a.EMail == model.EMail); if (result.Any()) { Error("Email account is already registered in this site!!!"); return(View(model)); } var account = Mapper.Map <Account>(model); account.IsArchived = false; account.IsAdmin = false; account.IsBlocked = false; account.SpaceLimit = 2408; account.Password = EncriptacionMD5.Encriptar(model.Password); account.Isconfirmed = false; account.BucketName = string.Format("mdp.{0}", Guid.NewGuid()); //var account = new Account //{ // Name = accountModel.Name, // LastName = accountModel.LastName, // EMail = accountModel.EMail, // IsArchived = false, // IsBlocked = false, // SpaceLimit = 500, // UsedSpace = 0, // Password = EncriptacionMD5.Encriptar(accountModel.Password) //}; //account.AddRole(new Role{Name = "User",IsArchived = false}); var createdAccount = _writeOnlyRepository.Create(account); var token = Convert.ToInt64(Session["userReferralId"]); if (token != 0) { var userReferring = _readOnlyRepository.GetById <Account>(token); userReferring.Referrals.Add(createdAccount); _writeOnlyRepository.Update(userReferring); } var serverFolderPath = Server.MapPath("~/App_Data/UploadedFiles/" + account.EMail); Directory.CreateDirectory(serverFolderPath); var newBucket = new PutBucketRequest { BucketName = account.BucketName }; AWSClient.PutBucket(newBucket); var putFolder = new PutObjectRequest { BucketName = account.BucketName, Key = "Shared/", ContentBody = string.Empty }; AWSClient.PutObject(putFolder); var sharedDirectory = serverFolderPath + "/Shared"; Directory.CreateDirectory(sharedDirectory); //var serverFolderPath = Server.MapPath("~/App_Data/UploadedFiles/" + account.EMail); //Directory.CreateDirectory(serverFolderPath); //var sharedDirectory =serverFolderPath + "/Shared"; //Directory.CreateDirectory(sharedDirectory); if (createdAccount.Files == null) { createdAccount.Files = new List <Domain.File>(); } if (createdAccount.History == null) { createdAccount.History = new List <Actividades>(); } createdAccount.Files.Add(new Domain.File { CreatedDate = DateTime.Now, FileSize = 0, IsArchived = false, IsDirectory = true, Name = "Shared", Url = "", Type = "", ModifiedDate = DateTime.Now }); _writeOnlyRepository.Update(createdAccount); AddActivity("El usuario se registro.", createdAccount); // ESTOOOOOOO #region EnvioCorreoParaNotificacion var fechaActual = DateTime.Now.Date; var pass = result.FirstOrDefault().Id; var data = "" + fechaActual.Day + fechaActual.Month + fechaActual.Year; var tokenConfir = pass + ";" + EncriptacionMD5.Encriptar(data); //var url = "http://minidropbox-1.apphb.com/PasswordReset/PasswordReset"; var url = "http://minidropboxclase.apphb.com/Account/Confirmed"; var emailBody = new StringBuilder("<b>Confirm your account of MiniDropbox</b>"); emailBody.Append("<br/>"); emailBody.Append("<br/>"); emailBody.Append("<b>" + url + "?token=" + tokenConfir + "<b>"); emailBody.Append("<br/>"); emailBody.Append("<br/>"); emailBody.Append("<b>This link is only valid through " + DateTime.Now.Day + "/" + DateTime.Now.Month + "/" + DateTime.Now.Year + "</b>"); if (MailSender.SendEmail(model.EMail, "Confirm your account of MiniDropbox", emailBody.ToString())) { return(Cancelar()); } Error("E-Mail failed to be sent, please try again!!!"); return(View(model)); #endregion return(Cancelar()); }
private bool fileUploader(HttpPostedFileBase fileControl, string user, string clientDateTime) { if (fileControl == null) { Error("There was a problem uploading the file , please try again!!!"); return(false); } var fileSize = fileControl.ContentLength; if (fileSize > 10485760) { Error("The file must be of 10 MB or less!!!"); return(false); } var userData = _readOnlyRepository.First <Account>(x => x.EMail == User.Identity.Name); var actualPath = Session["ActualPath"].ToString(); var fileName = Path.GetFileName(fileControl.FileName); var clientDate = Convert.ToDateTime(clientDateTime); //var serverFolderPath = Server.MapPath("~/App_Data/UploadedFiles/"+actualPath); //var directoryInfo = new DirectoryInfo(serverFolderPath); //if (!directoryInfo.Exists) //{ // directoryInfo.Create(); //} //var sharedDirectory = new DirectoryInfo( Server.MapPath("~/App_Data/UploadedFiles/"+User.Identity.Name + "/Shared")); //if (!sharedDirectory.Exists) //{ // sharedDirectory.Create(); // userData.Files.Add(new File // { // Name = "Shared", // CreatedDate = DateTime.Now, // ModifiedDate = DateTime.Now, // FileSize = 0, // Type = "", // Url = sharedDirectory.FullName, // IsArchived = false, // IsDirectory = true // }); //} //var path = Path.Combine(serverFolderPath, fileName); //var fileInfo = new DirectoryInfo(serverFolderPath+fileName); var putObjectRequest = new PutObjectRequest { BucketName = userData.BucketName, Key = actualPath + fileName, InputStream = fileControl.InputStream }; var putResponse = AWSClient.PutObject(putObjectRequest); if (userData.Files.Count(l => l.Name == fileName && l.Url.EndsWith(actualPath) && !l.IsArchived) > 0)//Actualizar Info Archivo { var bddInfo = userData.Files.FirstOrDefault(f => f.Name == fileName); //bddInfo.ModifiedDate = clientDate; //bddInfo.Type = fileControl.ContentType; //bddInfo.FileSize = fileSize; bddInfo.FileVersions.Add(new FileVersion { AmazonVersionId = putResponse.VersionId, CreationDate = clientDate, FileSize = fileSize, IsArchived = false }); _writeOnlyRepository.Update(bddInfo); } else//Archivo nuevo { var newFile = new File { Name = fileName, CreatedDate = clientDate, ModifiedDate = clientDate, FileSize = fileSize, Type = fileControl.ContentType, Url = actualPath, IsArchived = false, IsDirectory = false }; //if (userData.Files == null)//Si es primer archivo subido por el usuario //{ // userData.Files = new List<File> {newFile}; // var retorno = _writeOnlyRepository.Update(userData); // var file = retorno.Files.FirstOrDefault(); // file.FileVersions = new List<FileVersion>(); // file.FileVersions.Add(new FileVersion // { // AmazonVersionId = putResponse.VersionId, // CreationDate = clientDate, // FileSize = fileSize, // IsArchived = false // }); // _writeOnlyRepository.Update(file); //} //else //{ userData.Files.Add(newFile); var archivo = _writeOnlyRepository.Update(userData).Files.LastOrDefault(); archivo.FileVersions = new List <FileVersion>(); archivo.FileVersions.Add(new FileVersion { AmazonVersionId = putResponse.VersionId, CreationDate = clientDate, FileSize = fileSize, IsArchived = false }); _writeOnlyRepository.Update(archivo); //} } //fileControl.SaveAs(path); return(true); }
public ActionResult DeleteFile(int fileId) { var userData = _readOnlyRepository.First <Account>(a => a.EMail == User.Identity.Name); var fileToDelete = userData.Files.FirstOrDefault(f => f.Id == fileId); if (fileToDelete != null) { if (!fileToDelete.IsDirectory) { var deleteRequest = new DeleteObjectRequest { BucketName = userData.BucketName, Key = fileToDelete.Url + fileToDelete.Name }; AWSClient.DeleteObject(deleteRequest); fileToDelete.IsArchived = true; } else//Borrar carpeta con todos sus archivos { DeleteFolder(fileToDelete.Id); //var filesList = new List<KeyVersion>(); //var userFiles = userData.Files; //foreach (var file in userFiles) //{ // if (file == null) // continue; // var fileFolderArray = file.Url.Split('/'); // var fileFolder = fileFolderArray.Length > 1 ? fileFolderArray[fileFolderArray.Length - 2] : fileFolderArray.FirstOrDefault(); // if (!file.IsArchived && fileFolder.Equals(fileToDelete.Name) && // !string.Equals(file.Name, fileToDelete.Name)) // { // filesList.Add(!file.IsDirectory ? new KeyVersion(file.Url + file.Name) : new KeyVersion(file.Url+file.Name + "/")); // file.IsArchived = true; // } fileToDelete.IsArchived = true; //} //filesList.Add(new KeyVersion(fileToDelete.Name+"/")); //var deleteRequest = new DeleteObjectsRequest //{ // BucketName = userData.BucketName, // Keys = filesList //}; //AWSClient.DeleteObjects(deleteRequest); var deleteRequest = new DeleteObjectRequest { BucketName = userData.BucketName, Key = fileToDelete.Url + fileToDelete.Name + "/" }; AWSClient.DeleteObject(deleteRequest); AddActivity("El usuario ha borrado el siguiente archivo " + fileToDelete.Name); } _writeOnlyRepository.Update(userData); } return(RedirectToAction("ListAllContent")); }
public FeatureExporter() { _client = GameManager.Instance.Client; }