Beispiel #1
0
        public AddFolderResponse AddFolder(string folderPath, string name, bool?forceParent = false,
                                           FileSearchListAddtionalOptions additional        = null)
        {
            dynamic requiredParams = new
            {
                api          = "SYNO.FileStation.CreateFolder",
                version      = 2,
                method       = "create",
                folder_path  = "\"" + folderPath + "\"",
                name         = "\"" + name + "\"",
                force_parent = forceParent
            };

            var proc = new FuncProcessor <AddFolderResponse>("/entry.cgi", _session.sid, requiredParams,
                                                             new
            {
                additional = TrueBooleanValuesFromObjectToCommaSeparatedList(additional)
            });

            return(proc.Run());
        }
Beispiel #2
0
        public RenameResponse FileSystemRename(string path, string name,
                                               FileSearchListAddtionalOptions additional = null, string searchTaskId = null)
        {
            dynamic requiredParams = new
            {
                api     = "SYNO.FileStation.Rename",
                version = 1,
                method  = "rename",
                path,
                name,
                additional,
                search_taskid = searchTaskId
            };

            var proc = new FuncProcessor <RenameResponse>("/entry.cgi", _session.sid, requiredParams,
                                                          new
            {
                additional = TrueBooleanValuesFromObjectToCommaSeparatedList(additional)
            });

            return(proc.Run());
        }
Beispiel #3
0
        public SearchStatusResponse SearchStatus(string taskId, int?offset = null, int?limit = 100,
                                                 SortBy sortBy             = SortBy.name, SortDirection sortDirection = SortDirection.asc, string[] pattern = null,
                                                 FileTypeFilter fileType   = FileTypeFilter.file, FileSearchListAddtionalOptions additional = null)
        {
            dynamic requiredParams = new
            {
                api     = "SYNO.FileStation.Search",
                version = 1,
                method  = "list",
                taskid  = taskId,
                offset,
                limit,
                sort_by        = sortBy,
                sort_direction = sortDirection,
                pattern        = string.Join(",", pattern ?? new[] { "" }),
                filetype       = fileType
            };

            var proc = new FuncProcessor <SearchStatusResponse>("/entry.cgi", _session.sid,
                                                                requiredParams, new
            {
                additional = TrueBooleanValuesFromObjectToCommaSeparatedList(additional)
            });

            return(proc.Run());
        }