コード例 #1
0
        public void CreateDeleteFile()
        {
            using (new NFX.ApplicationModel.ServiceBaseApplication(null, LACONF.AsLaconicConfig()))
            {
                var fs = FS.FileSystem.Instances[NFX_S3];

                using (var session = fs.StartSession())
                {
                    var dir  = session[S3_ROOT_FS] as FileSystemDirectory;
                    var file = dir.CreateFile(S3_FN1, 1500);

                    Aver.AreEqual(S3_FN1, file.Name);

                    IDictionary <string, string> headersFN1 = S3V4.GetItemMetadata(file.Path, S3_ACCESSKEY, S3_SECRETKEY, S3_BUCKET, S3_REGION, 0);
                    Aver.AreEqual(1500, headersFN1["Content-Length"].AsInt());
                    Aver.AreEqual(1500, file.FileStream.Length);

                    Aver.AreEqual(1500UL, file.Size);

                    var file2 = session[fs.CombinePaths(S3_ROOT_FS, S3_FN1)];
                    Aver.IsNotNull(file2);
                    Aver.IsTrue(file2 is FileSystemFile);
                    Aver.AreEqual(S3_FN1, ((FileSystemFile)file2).Name);

                    file.Dispose();

                    file2.Delete();
                    Aver.IsFalse(fileExists((FileSystemFile)file2));
                }
            }
        }
コード例 #2
0
        public void PutFile()
        {
            string  fullFileName = S3_DXW_ROOT + "/" + S3_FN1;
            S3V4URI fileUri      = new S3V4URI(fullFileName);

            if (S3V4.FileExists(fileUri, S3_ACCESSKEY, S3_SECRETKEY, 0))
            {
                S3V4.RemoveFile(fileUri, S3_ACCESSKEY, S3_SECRETKEY, 0);
            }

            S3V4.PutFile(fileUri, S3_ACCESSKEY, S3_SECRETKEY, S3_CONTENTSTREAM1, 0);

            using (MemoryStream ms = new MemoryStream())
            {
                S3V4.GetFile(fileUri, S3_ACCESSKEY, S3_SECRETKEY, ms, 0);

                byte[] s3FileContentBytes = ms.GetBuffer();

                string s3FileContentStr = Encoding.UTF8.GetString(s3FileContentBytes, 0, (int)ms.Length);

                Assert.AreEqual(S3_CONTENTSTR1, s3FileContentStr);
            }

            S3V4.RemoveFile(fileUri, S3_ACCESSKEY, S3_SECRETKEY, 0);
        }
コード例 #3
0
        private void initialize()
        {
            using (new NFX.ApplicationModel.ServiceBaseApplication(null, LACONF.AsLaconicConfig()))
            {
                using (Stream s = new FileStream(FN2_FS_FULLPATH, FileMode.Create, FileAccess.Write))
                {
                    s.Write(CONTENT2_BYTES, 0, CONTENT2_BYTES.Length);
                }

                S3V4.PutFolder(S3_ROOT_FS, S3_ACCESSKEY, S3_SECRETKEY, S3_BUCKET, S3_REGION, 0);
            }
        }
コード例 #4
0
        public void PutFolder()
        {
            using (new NFX.ApplicationModel.ServiceBaseApplication(null, LACONF.AsLaconicConfig()))
            {
                string  fullFolderName = S3_DXW_ROOT;
                S3V4URI folderUri      = S3V4URI.CreateFolder(fullFolderName);

                if (S3V4.FolderExists(folderUri, S3_ACCESSKEY, S3_SECRETKEY, 0))
                {
                    S3V4.RemoveFolder(folderUri, S3_ACCESSKEY, S3_SECRETKEY, 0);
                }

                S3V4.PutFolder(folderUri, S3_ACCESSKEY, S3_SECRETKEY, 0);

                PutFile();

                S3V4.RemoveFolder(folderUri, S3_ACCESSKEY, S3_SECRETKEY, 0);
            }
        }
コード例 #5
0
        public void CreateFile()
        {
            using (new NFX.ApplicationModel.ServiceBaseApplication(null, LACONF.AsLaconicConfig()))
            {
                var fs = FS.FileSystem.Instances[NFX_S3];

                using (var session = fs.StartSession())
                {
                    var dir = session[S3_ROOT_FS] as FileSystemDirectory;

                    var file = dir.CreateFile(FN1_FS, 1500);

                    Assert.AreEqual(FN1_FS, file.Name);

                    Assert.IsTrue(S3V4.FileExists(file.Path, S3_ACCESSKEY, S3_SECRETKEY, S3_BUCKET, S3_REGION, 0));
                    Assert.AreEqual(1500, S3V4.GetItemMetadata(file.Path, S3_ACCESSKEY, S3_SECRETKEY, S3_BUCKET, S3_REGION, 0)["Content-Length"].AsLong());
                    Assert.AreEqual(1500, file.FileStream.Length);
                }
            }
        }
コード例 #6
0
        private bool folderExists(FileSystemDirectory folder)
        {
            var handle = (S3V4FSH)folder.Handle;

            return(S3V4.FolderExists(handle.Path, S3_ACCESSKEY, S3_SECRETKEY, S3_BUCKET, S3_REGION, 0));
        }
コード例 #7
0
        private bool fileExists(FileSystemFile file)
        {
            var handle = (S3V4FSH)file.Handle;

            return(S3V4.FileExists(handle.Path, S3_ACCESSKEY, S3_SECRETKEY, S3_BUCKET, S3_REGION, 0));
        }