Skip to contents

This object is used to interact with Sharepoint, adding the ability to list, read, write, download, upload, create directories and remove files.

Details

About the token, you can retrieve it by following the guideline in your enterprise.

Super classes

connector::Connector -> connector::ConnectorFS -> ConnectorSharepoint

Active bindings

folder

character The path of the folder to interact with

token

character The Azure token

site_url

character The URL of the Sharepoint site

path

character The whole URL path of the Sharepoint resource

Methods

Inherited methods


Method new()

Initializes the ConnectorSharepoint class

Usage

ConnectorSharepoint$new(
  site_url,
  token = get_token(),
  path_of_folder = NULL,
  ...,
  extra_class = NULL
)

Arguments

site_url

The URL of the Sharepoint site

token

The Azure token. By default, it will be retrieve by get_token

path_of_folder

The path of the folder to interact with, if you don't want to interact with the root folder "Documents"

...

Additional parameters to pass to the get_sharepoint_site function

extra_class

character Extra class added to the object.

Returns

A ConnectorSharepoint object


Method get_conn()

Get the connection

Usage

ConnectorSharepoint$get_conn()

Returns

The connection


Method upload_directory_cnt()

Upload a folder

Usage

ConnectorSharepoint$upload_directory_cnt(
  folder,
  name = basename(folder),
  ...,
  recursive = FALSE
)

Arguments

folder

Local folder path

name

Folder name to be used when uploaded

...

additional paramaeters passed on to upload_folder() method of Microsoft365R::ms_drive() class or to upload() method of Microsoft365R::ms_drive_item() class.

recursive

If recursive is TRUE, all subfolders will also be transferred recursively. Default: FALSE

Returns

ConnectorSharepoint object

Examples

if (FALSE) { # not_on_ci()
# Connect to Sharepoint
cs <- ConnectorSharepoint$new(
  site_url = Sys.getenv("SHAREPOINT_SITE_URL")
)

cs

# List content
cs$list_content_cnt()

# Write to the connector
cs$write_cnt(iris, "iris.rds")

# Check it is there
cs$list_content_cnt()

# Read the result back
cs$read_cnt("iris.rds") |>
  head()

# Remove a file or directory
cs$remove_cnt("iris.rds")

# Check it is there
cs$list_content_cnt()
}