Example #1
0
        /// <summary>
        /// Compara los ficheros que hay en local con s3 para descargar y subir los que falten
        /// </summary>
        public void CompareFiles()
        {
            S3Management s3m = new S3Management();

            List <string> s3List    = RemoteFiles();
            List <string> localList = LocalFiles();

            List <string> toDownload = new List <string>();
            List <string> toUpload   = new List <string>();

            //archivos de s3 que no están en
            toDownload = s3List.Except(localList).ToList();

            //Ver archivos en local que no están en s3
            toUpload = localList.Except(s3List).ToList();

            //Update files
            foreach (string file in toDownload)
            {
                s3m.DownloadFile(file);
            }

            foreach (string file in toUpload)
            {
                s3m.UploadFile(file);
            }
        }
Example #2
0
        private static List <string> RemoteFiles()
        {
            S3Management s3m = new S3Management();

            List <string>       list        = new List <string>();
            ListObjectsResponse listToParse = s3m.ListAllFiles();

            foreach (S3Object obj in listToParse.S3Objects)
            {
                list.Add(obj.Key);
            }

            return(list);
        }