Exemple #1
0
 public ShareFileItem createFile(ShareFileItem item, List <String> spaceKeys)
 {
     return(createFile(item.FileInfo, item.Title, item.Description, spaceKeys, item.GetIcon()));
 }
Exemple #2
0
        public ShareFileItem findFile(ShareFileItem shareFileItem)
        {
            try
            {
                AHAItem   foundItem = null;
                AHAClient ahaClient = new AHAClient(session);
                if (shareFileItem.FileInfo != null)
                {
                    List <AHAItem> items = ahaClient.Search("&" + shareFileItem.FileInfo.Name);
                    if (items.Count == 1)
                    {
                        foundItem = items[0];
                    }
                }
                if (foundItem == null)
                {
                    if (shareFileItem.FileInfo != null)
                    {
                        if (!shareFileItem.FileInfo.Name.Equals(shareFileItem.Title))
                        {
                            List <AHAItem> items = ahaClient.Search("&" + shareFileItem.Title);
                            if (items.Count == 1)
                            {
                                foundItem = items[0];
                            }
                        }
                    }
                    else
                    {
                        List <AHAItem> items = ahaClient.Search("&" + shareFileItem.Title);
                        if (items.Count == 1)
                        {
                            foundItem = items[0];
                        }
                    }
                }

                if (foundItem != null)
                {
                    FileApi        fileApi        = new FileApi(session.GetApiClient());
                    ViewFileResult viewFileResult = fileApi.ViewFile(foundItem.Key);
                    if (viewFileResult.Hdr.Rc == 0)
                    {
                        FileRecord fileRecord = viewFileResult.File;

                        ShareFileItem newShareFileItem = new ShareFileItem(fileRecord.Name, fileRecord.Description);
                        newShareFileItem.Key      = fileRecord.Key;
                        newShareFileItem.FileInfo = shareFileItem.FileInfo;
                        newShareFileItem.SetIcon(shareFileItem.GetIcon());
                        newShareFileItem.Record = fileRecord;

                        List <ShareSpace> itemSpaces = new List <ShareSpace>();
                        foreach (DisplayRecord spaceDisplayRecord in fileRecord.Destinations)
                        {
                            ShareSpace space = new ShareSpace(spaceDisplayRecord.Key, spaceDisplayRecord.DisplayName, null);
                            itemSpaces.Add(space);
                        }

                        newShareFileItem.Spaces = itemSpaces;
                        return(newShareFileItem);
                    }
                    else
                    {
                        return(null);
                    }
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Error creating file", ex);
            }
        }