def create_upload_session(self,
                              source_path,
                              chunk_size,
                              chunk_uploaded=None,
                              *chunk_func_args):
        """Upload a file as multiple chunks

        :param str source_path: path where file to upload resides
        :param int chunk_size: upload chunk size
        :param (long)->None or None chunk_uploaded: uploaded event
        :param chunk_func_args: arguments to pass to chunk_uploaded function
        :return: office365.sharepoint.files.file.File
        """
        file_size = os.path.getsize(source_path)
        if file_size > chunk_size:
            qry = UploadSessionQuery(self, source_path, chunk_size,
                                     chunk_uploaded, chunk_func_args)
            self.context.add_query(qry)
            return qry.file
        else:
            with open(source_path, 'rb') as content_file:
                file_content = content_file.read()
            info = FileCreationInformation(url=os.path.basename(source_path),
                                           overwrite=True,
                                           content=file_content)
            qry = CreateFileQuery(self, info)
            self.context.add_query(qry)
            return qry.return_type
    def add(self, file_creation_information):
        """Creates a File resource

        :type file_creation_information: office365.sharepoint.file_creation_information.FileCreationInformation
        """
        qry = CreateFileQuery(self, file_creation_information)
        self.context.add_query(qry)
        return qry.return_type
Exemple #3
0
    def upload_file(self, file_name, content):
        """Uploads a file into folder

        :type file_name: str
        :type content: str
        :rtype: office365.sharepoint.files.file.File
        """
        info = FileCreationInformation(url=file_name, overwrite=True, content=content)
        qry = CreateFileQuery(self.files, info)
        self.context.add_query(qry)
        return qry.return_type