def add(self, server_relative_url): """Adds the folder that is located at the specified URL to the collection. :type server_relative_url: str """ folder = Folder(self.context) self.add_child(folder) folder.set_property("ServerRelativeUrl", server_relative_url) qry = CreateEntityQuery(self, folder, folder) self.context.add_query(qry) return folder
def root_folder(self): """Get a root folder""" if self.is_property_available('RootFolder'): return self.properties["RootFolder"] else: return Folder(self.context, ResourcePath("RootFolder", self.resource_path))
def get_by_path(self, decoded_url): from office365.sharepoint.types.resource_path import ResourcePath as SPResPath target_folder = Folder(self.context) qry = ServiceOperationQuery(self, "GetByPath", SPResPath(decoded_url), None, "parameters", target_folder) self.context.add_query(qry) return target_folder
def folder(self): """Get folder""" if self.is_property_available("Folder"): return self.properties["Folder"] else: from office365.sharepoint.folders.folder import Folder return Folder(self.context, ResourcePath("Folder", self.resource_path))
def get_folder_by_server_relative_url(self, url): """Returns the folder object located at the specified server-relative URL. :type url: str """ return Folder( self.context, ResourcePathServiceOperation("getFolderByServerRelativeUrl", [url], self.resource_path) )
def get_by_url(self, url): """Retrieve Folder resource by url :type url: str """ return Folder( self.context, ResourcePathServiceOperation("GetByUrl", [url], self.resource_path))
def get_folder_by_id(self, unique_id): """ :type unique_id: str """ folder = Folder(self.context) qry = ServiceOperationQuery(self, "getFolderById", [unique_id], None, None, folder) self.context.add_query(qry) return folder
def get_by_path(self, decoded_url): """ Get folder at the specified path. :param str decoded_url: Specifies the path for the folder. """ return Folder( self.context, ServiceOperationPath("GetByPath", SPResPath(decoded_url), self.resource_path))
def get_by_url(self, url): """Retrieve Folder resource by url :param str url: Specifies the URL of the list folder. The URL MUST be an absolute URL, a server-relative URL, a site-relative URL relative to the site (2) containing the collection of list folders, or relative to the list folder that directly contains this collection of list folders. """ return Folder( self.context, ServiceOperationPath("GetByUrl", [url], self.resource_path))
def add_using_path(self, decoded_url, overwrite): """ :type decoded_url: str :type overwrite: bool """ parameters = {"DecodedUrl": decoded_url, "Overwrite": overwrite} target_folder = Folder(self.context) qry = ServiceOperationQuery(self, "AddUsingPath", parameters, None, None, target_folder) self.context.add_query(qry) return target_folder
def add(self, name): """Adds the folder that is located at the specified URL to the collection. :param str name: Specifies the Name of the folder. """ return_type = Folder(self.context, EntityPath(name, self.resource_path)) self.add_child(return_type) qry = ServiceOperationQuery(self, "Add", [name], None, None, return_type) self.context.add_query(qry) return return_type
def get_folder_by_server_relative_path(self, decoded_url): """Returns the folder object located at the specified server-relative URL. Prefer this method over get_folder_by_server_relative_url since it supports % and # symbols Details: https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/supporting-and-in-file-and-folder-with-the-resourcepath-api :type decoded_url: str """ params = {"DecodedUrl": decoded_url} return Folder( self.context, ServiceOperationPath("getFolderByServerRelativePath", params, self.resource_path))
def add_using_path(self, decoded_url, overwrite): """ Adds the folder located at the specified path to the collection. :param str decoded_url: Specifies the path for the folder. :param bool overwrite: bool """ parameters = {"DecodedUrl": decoded_url, "Overwrite": overwrite} target_folder = Folder(self.context) qry = ServiceOperationQuery(self, "AddUsingPath", parameters, None, None, target_folder) self.context.add_query(qry) return target_folder
def folder(self): """Get folder""" from office365.sharepoint.folders.folder import Folder return self.properties.get( "Folder", Folder(self.context, ResourcePath("Folder", self.resource_path)))
def root_folder(self): """Get a root folder""" return self.properties.get("RootFolder", Folder(self.context, ResourcePath("RootFolder", self.resource_path)))