Exemple #1
0
        public async Task <ForgeEntity> FindFolderByName(string parentFolderId, string folderName)
        {
            ForgeEntity entity = null;

            var foldersApi = NewForgeApi <FoldersApi>();

            dynamic folders = await foldersApi.GetFolderContentsAsync(Configuration.ForgeBimProjectId, parentFolderId, new string[] { "folders" }.ToList());

            (string name, string id)folder = ForgeFolderJson.SearchFolders(folders, folderName);

            if (!string.IsNullOrWhiteSpace(folder.id))
            {
                entity = new ForgeEntity
                {
                    Type = ForgeEntityType.Folder,
                    Id   = folder.id,
                    Name = folder.name
                };
            }

            return(entity);
        }
Exemple #2
0
        public async Task <ForgeEntity> CreateFolder(string parentFolderId, string folderName)
        {
            ForgeEntity entity = null;

            var foldersApi = NewForgeApi <FoldersApi>();

            var folder = ForgeFolderJson.CreateFolder(folderName, parentFolderId);

            var response = await foldersApi.PostFolderAsyncWithHttpInfo(Configuration.ForgeBimProjectId, folder);

            if (response.StatusCode == 201)
            {
                var newFolderLocation = new Uri(response.LocationHeader());

                entity = new ForgeEntity
                {
                    Type = ForgeEntityType.Folder,
                    Id   = newFolderLocation.Segments.Last(),
                    Name = folderName
                };
            }

            return(entity);
        }